@loaders.gl/schema 3.1.0-beta.7 → 3.1.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.
Files changed (48) hide show
  1. package/dist/bundle.js +5 -1289
  2. package/dist/category/gis.d.ts +50 -1
  3. package/dist/category/gis.d.ts.map +1 -1
  4. package/dist/category/mesh/mesh-to-arrow-table.js +3 -3
  5. package/dist/dist.min.js +1289 -0
  6. package/dist/es5/bundle.js +1 -1
  7. package/dist/es5/bundle.js.map +1 -1
  8. package/dist/es5/category/mesh/convert-mesh.js +10 -2
  9. package/dist/es5/category/mesh/convert-mesh.js.map +1 -1
  10. package/dist/es5/category/mesh/deduce-mesh-schema.js +8 -8
  11. package/dist/es5/category/mesh/deduce-mesh-schema.js.map +1 -1
  12. package/dist/es5/category/mesh/mesh-utils.js +16 -16
  13. package/dist/es5/category/mesh/mesh-utils.js.map +1 -1
  14. package/dist/es5/category/table/deduce-table-schema.js +9 -9
  15. package/dist/es5/category/table/deduce-table-schema.js.map +1 -1
  16. package/dist/es5/index.js +52 -52
  17. package/dist/es5/index.js.map +1 -1
  18. package/dist/es5/lib/arrow/get-type-info.js +3 -3
  19. package/dist/es5/lib/arrow/get-type-info.js.map +1 -1
  20. package/dist/es5/lib/batches/base-table-batch-aggregator.js +53 -42
  21. package/dist/es5/lib/batches/base-table-batch-aggregator.js.map +1 -1
  22. package/dist/es5/lib/batches/columnar-table-batch-aggregator.js +90 -71
  23. package/dist/es5/lib/batches/columnar-table-batch-aggregator.js.map +1 -1
  24. package/dist/es5/lib/batches/row-table-batch-aggregator.js +70 -59
  25. package/dist/es5/lib/batches/row-table-batch-aggregator.js.map +1 -1
  26. package/dist/es5/lib/batches/table-batch-builder.js +133 -113
  27. package/dist/es5/lib/batches/table-batch-builder.js.map +1 -1
  28. package/dist/es5/lib/schema/impl/enum.js +1 -1
  29. package/dist/es5/lib/schema/impl/field.js +32 -19
  30. package/dist/es5/lib/schema/impl/field.js.map +1 -1
  31. package/dist/es5/lib/schema/impl/schema.js +119 -54
  32. package/dist/es5/lib/schema/impl/schema.js.map +1 -1
  33. package/dist/es5/lib/schema/impl/type.js +728 -395
  34. package/dist/es5/lib/schema/impl/type.js.map +1 -1
  35. package/dist/es5/lib/schema/schema.js +37 -37
  36. package/dist/es5/lib/utils/async-queue.js +164 -81
  37. package/dist/es5/lib/utils/async-queue.js.map +1 -1
  38. package/dist/es5/lib/utils/row-utils.js +4 -4
  39. package/dist/es5/lib/utils/row-utils.js.map +1 -1
  40. package/dist/esm/index.js.map +1 -1
  41. package/dist/index.d.ts +3 -1
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/lib/arrow/arrow-type-utils.js +1 -1
  44. package/dist/lib/batches/row-table-batch-aggregator.js +1 -1
  45. package/dist/lib/schema-utils/deduce-column-type.js +1 -1
  46. package/package.json +3 -3
  47. package/src/category/gis.ts +69 -1
  48. package/src/index.ts +15 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/utils/async-queue.ts"],"names":["ArrayQueue","Array","enqueue","value","push","dequeue","shift","Symbol","asyncIterator","AsyncQueue","constructor","_values","_settlers","_closed","close","length","resolve","done","Error","settler","reject","next","Promise","takeAsync","asyncIterable","count","Infinity","result","iterator"],"mappings":"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","sourcesContent":["// From https://github.com/rauschma/async-iter-demo/tree/master/src under MIT license\n// http://2ality.com/2016/10/asynchronous-iteration.html\n\nclass ArrayQueue<T> extends Array<T> {\n enqueue(value: T) {\n // Add at the end\n return this.push(value);\n }\n dequeue(): T {\n // Remove first element\n return this.shift() as T;\n }\n}\n\nexport default class AsyncQueue<T> {\n private _values: ArrayQueue<T | Error>;\n private _settlers: ArrayQueue<{resolve: (value: any) => void; reject: (reason?: any) => void}>;\n private _closed: boolean;\n\n constructor() {\n // enqueues > dequeues\n this._values = new ArrayQueue<T>();\n // dequeues > enqueues\n this._settlers = new ArrayQueue<{\n resolve: (value: any) => void;\n reject: (reason?: any) => void;\n }>();\n this._closed = false;\n }\n\n close(): void {\n while (this._settlers.length > 0) {\n this._settlers.dequeue().resolve({done: true});\n }\n this._closed = true;\n }\n\n [Symbol.asyncIterator](): AsyncIterator<T> {\n return this;\n }\n\n enqueue(value: T | Error): void {\n if (this._closed) {\n throw new Error('Closed');\n }\n\n if (this._settlers.length > 0) {\n if (this._values.length > 0) {\n throw new Error('Illegal internal state');\n }\n const settler = this._settlers.dequeue();\n if (value instanceof Error) {\n settler.reject(value);\n } else {\n settler.resolve({value});\n }\n } else {\n this._values.enqueue(value);\n }\n }\n\n /**\n * @returns a Promise for an IteratorResult\n */\n next(): Promise<any> {\n if (this._values.length > 0) {\n const value = this._values.dequeue();\n if (value instanceof Error) {\n return Promise.reject(value);\n }\n return Promise.resolve({value});\n }\n\n if (this._closed) {\n if (this._settlers.length > 0) {\n throw new Error('Illegal internal state');\n }\n return Promise.resolve({done: true});\n }\n // Wait for new values to be enqueued\n return new Promise((resolve, reject) => {\n this._settlers.enqueue({resolve, reject});\n });\n }\n}\n\n/**\n * @returns a Promise for an Array with the elements in `asyncIterable`\n */\nexport async function takeAsync(\n asyncIterable: AsyncIterable<any>,\n count = Infinity\n): Promise<any[]> {\n const result: Array<any> = [];\n const iterator = asyncIterable[Symbol.asyncIterator]();\n while (result.length < count) {\n const {value, done} = await iterator.next();\n if (done) {\n break;\n }\n result.push(value);\n }\n return result;\n}\n"],"file":"async-queue.js"}
1
+ {"version":3,"sources":["../../../../src/lib/utils/async-queue.ts"],"names":["ArrayQueue","value","push","shift","Array","Symbol","asyncIterator","AsyncQueue","_values","_settlers","_closed","length","dequeue","resolve","done","Error","settler","reject","enqueue","Promise","takeAsync","asyncIterable","count","Infinity","result","iterator","next"],"mappings":"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","sourcesContent":["// From https://github.com/rauschma/async-iter-demo/tree/master/src under MIT license\n// http://2ality.com/2016/10/asynchronous-iteration.html\n\nclass ArrayQueue<T> extends Array<T> {\n enqueue(value: T) {\n // Add at the end\n return this.push(value);\n }\n dequeue(): T {\n // Remove first element\n return this.shift() as T;\n }\n}\n\nexport default class AsyncQueue<T> {\n private _values: ArrayQueue<T | Error>;\n private _settlers: ArrayQueue<{resolve: (value: any) => void; reject: (reason?: any) => void}>;\n private _closed: boolean;\n\n constructor() {\n // enqueues > dequeues\n this._values = new ArrayQueue<T>();\n // dequeues > enqueues\n this._settlers = new ArrayQueue<{\n resolve: (value: any) => void;\n reject: (reason?: any) => void;\n }>();\n this._closed = false;\n }\n\n close(): void {\n while (this._settlers.length > 0) {\n this._settlers.dequeue().resolve({done: true});\n }\n this._closed = true;\n }\n\n [Symbol.asyncIterator](): AsyncIterator<T> {\n return this;\n }\n\n enqueue(value: T | Error): void {\n if (this._closed) {\n throw new Error('Closed');\n }\n\n if (this._settlers.length > 0) {\n if (this._values.length > 0) {\n throw new Error('Illegal internal state');\n }\n const settler = this._settlers.dequeue();\n if (value instanceof Error) {\n settler.reject(value);\n } else {\n settler.resolve({value});\n }\n } else {\n this._values.enqueue(value);\n }\n }\n\n /**\n * @returns a Promise for an IteratorResult\n */\n next(): Promise<any> {\n if (this._values.length > 0) {\n const value = this._values.dequeue();\n if (value instanceof Error) {\n return Promise.reject(value);\n }\n return Promise.resolve({value});\n }\n\n if (this._closed) {\n if (this._settlers.length > 0) {\n throw new Error('Illegal internal state');\n }\n return Promise.resolve({done: true});\n }\n // Wait for new values to be enqueued\n return new Promise((resolve, reject) => {\n this._settlers.enqueue({resolve, reject});\n });\n }\n}\n\n/**\n * @returns a Promise for an Array with the elements in `asyncIterable`\n */\nexport async function takeAsync(\n asyncIterable: AsyncIterable<any>,\n count = Infinity\n): Promise<any[]> {\n const result: Array<any> = [];\n const iterator = asyncIterable[Symbol.asyncIterator]();\n while (result.length < count) {\n const {value, done} = await iterator.next();\n if (done) {\n break;\n }\n result.push(value);\n }\n return result;\n}\n"],"file":"async-queue.js"}
@@ -15,9 +15,9 @@ function convertToObjectRow(arrayRow, headers) {
15
15
  throw new Error('no headers');
16
16
  }
17
17
 
18
- const objectRow = {};
18
+ var objectRow = {};
19
19
 
20
- for (let i = 0; i < headers.length; i++) {
20
+ for (var i = 0; i < headers.length; i++) {
21
21
  objectRow[headers[i]] = arrayRow[i];
22
22
  }
23
23
 
@@ -33,9 +33,9 @@ function convertToArrayRow(objectRow, headers) {
33
33
  throw new Error('no headers');
34
34
  }
35
35
 
36
- const arrayRow = new Array(headers.length);
36
+ var arrayRow = new Array(headers.length);
37
37
 
38
- for (let i = 0; i < headers.length; i++) {
38
+ for (var i = 0; i < headers.length; i++) {
39
39
  arrayRow[i] = objectRow[headers[i]];
40
40
  }
41
41
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/utils/row-utils.ts"],"names":["convertToObjectRow","arrayRow","headers","Error","objectRow","i","length","convertToArrayRow","Array"],"mappings":";;;;;;;;AACO,SAASA,kBAAT,CACLC,QADK,EAELC,OAFK,EAGwB;AAC7B,MAAI,CAACD,QAAL,EAAe;AACb,UAAM,IAAIE,KAAJ,CAAU,UAAV,CAAN;AACD;;AACD,MAAI,CAACD,OAAL,EAAc;AACZ,UAAM,IAAIC,KAAJ,CAAU,YAAV,CAAN;AACD;;AACD,QAAMC,SAAS,GAAG,EAAlB;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACI,MAA5B,EAAoCD,CAAC,EAArC,EAAyC;AACvCD,IAAAA,SAAS,CAACF,OAAO,CAACG,CAAD,CAAR,CAAT,GAAwBJ,QAAQ,CAACI,CAAD,CAAhC;AACD;;AACD,SAAOD,SAAP;AACD;;AAGM,SAASG,iBAAT,CACLH,SADK,EAELF,OAFK,EAGE;AACP,MAAI,CAACE,SAAL,EAAgB;AACd,UAAM,IAAID,KAAJ,CAAU,UAAV,CAAN;AACD;;AACD,MAAI,CAACD,OAAL,EAAc;AACZ,UAAM,IAAIC,KAAJ,CAAU,YAAV,CAAN;AACD;;AACD,QAAMF,QAAQ,GAAG,IAAIO,KAAJ,CAAUN,OAAO,CAACI,MAAlB,CAAjB;;AACA,OAAK,IAAID,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACI,MAA5B,EAAoCD,CAAC,EAArC,EAAyC;AACvCJ,IAAAA,QAAQ,CAACI,CAAD,CAAR,GAAcD,SAAS,CAACF,OAAO,CAACG,CAAD,CAAR,CAAvB;AACD;;AACD,SAAOJ,QAAP;AACD","sourcesContent":["/** Convert an object row to an array row */\nexport function convertToObjectRow(\n arrayRow: any[],\n headers: string[]\n): {[columnName: string]: any} {\n if (!arrayRow) {\n throw new Error('null row');\n }\n if (!headers) {\n throw new Error('no headers');\n }\n const objectRow = {};\n for (let i = 0; i < headers.length; i++) {\n objectRow[headers[i]] = arrayRow[i];\n }\n return objectRow;\n}\n\n/** Convert an object row to an array row */\nexport function convertToArrayRow(\n objectRow: {[columnName: string]: any},\n headers: string[]\n): any[] {\n if (!objectRow) {\n throw new Error('null row');\n }\n if (!headers) {\n throw new Error('no headers');\n }\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"],"file":"row-utils.js"}
1
+ {"version":3,"sources":["../../../../src/lib/utils/row-utils.ts"],"names":["convertToObjectRow","arrayRow","headers","Error","objectRow","i","length","convertToArrayRow","Array"],"mappings":";;;;;;;;AACO,SAASA,kBAAT,CACLC,QADK,EAELC,OAFK,EAGwB;AAC7B,MAAI,CAACD,QAAL,EAAe;AACb,UAAM,IAAIE,KAAJ,CAAU,UAAV,CAAN;AACD;;AACD,MAAI,CAACD,OAAL,EAAc;AACZ,UAAM,IAAIC,KAAJ,CAAU,YAAV,CAAN;AACD;;AACD,MAAMC,SAAS,GAAG,EAAlB;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACI,MAA5B,EAAoCD,CAAC,EAArC,EAAyC;AACvCD,IAAAA,SAAS,CAACF,OAAO,CAACG,CAAD,CAAR,CAAT,GAAwBJ,QAAQ,CAACI,CAAD,CAAhC;AACD;;AACD,SAAOD,SAAP;AACD;;AAGM,SAASG,iBAAT,CACLH,SADK,EAELF,OAFK,EAGE;AACP,MAAI,CAACE,SAAL,EAAgB;AACd,UAAM,IAAID,KAAJ,CAAU,UAAV,CAAN;AACD;;AACD,MAAI,CAACD,OAAL,EAAc;AACZ,UAAM,IAAIC,KAAJ,CAAU,YAAV,CAAN;AACD;;AACD,MAAMF,QAAQ,GAAG,IAAIO,KAAJ,CAAUN,OAAO,CAACI,MAAlB,CAAjB;;AACA,OAAK,IAAID,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACI,MAA5B,EAAoCD,CAAC,EAArC,EAAyC;AACvCJ,IAAAA,QAAQ,CAACI,CAAD,CAAR,GAAcD,SAAS,CAACF,OAAO,CAACG,CAAD,CAAR,CAAvB;AACD;;AACD,SAAOJ,QAAP;AACD","sourcesContent":["/** Convert an object row to an array row */\nexport function convertToObjectRow(\n arrayRow: any[],\n headers: string[]\n): {[columnName: string]: any} {\n if (!arrayRow) {\n throw new Error('null row');\n }\n if (!headers) {\n throw new Error('no headers');\n }\n const objectRow = {};\n for (let i = 0; i < headers.length; i++) {\n objectRow[headers[i]] = arrayRow[i];\n }\n return objectRow;\n}\n\n/** Convert an object row to an array row */\nexport function convertToArrayRow(\n objectRow: {[columnName: string]: any},\n headers: string[]\n): any[] {\n if (!objectRow) {\n throw new Error('null row');\n }\n if (!headers) {\n throw new Error('no headers');\n }\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"],"file":"row-utils.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":["default","TableBatchBuilder","RowTableBatchAggregator","ColumnarTableBatchAggregator","convertToObjectRow","convertToArrayRow","getMeshSize","getMeshBoundingBox","convertMesh","deduceMeshSchema","deduceMeshField","makeMeshAttributeMetadata","Schema","Field","DataType","Null","Binary","Bool","Int","Int8","Int16","Int32","Int64","Uint8","Uint16","Uint32","Uint64","Float","Float16","Float32","Float64","Utf8","Date","DateDay","DateMillisecond","Time","TimeMillisecond","TimeSecond","Timestamp","TimestampSecond","TimestampMillisecond","TimestampMicrosecond","TimestampNanosecond","Interval","IntervalDayTime","IntervalYearMonth","FixedSizeList","Struct","deduceTypeFromColumn","deduceTypeFromValue","getTypeInfo","getArrowTypeFromTypedArray","AsyncQueue"],"mappings":"AAuBA,SAAQA,OAAO,IAAIC,iBAAnB,QAA2C,mCAA3C;AAEA,SAAQD,OAAO,IAAIE,uBAAnB,QAAiD,0CAAjD;AACA,SAAQF,OAAO,IAAIG,4BAAnB,QAAsD,+CAAtD;AAEA,SAAQC,kBAAR,EAA4BC,iBAA5B,QAAoD,uBAApD;AAYA,SAAQC,WAAR,EAAqBC,kBAArB,QAA8C,4BAA9C;AACA,SAAQC,WAAR,QAA0B,8BAA1B;AACA,SACEC,gBADF,EAEEC,eAFF,EAGEC,yBAHF,QAIO,oCAJP;AAmCA,SACEC,MADF,EAEEC,KAFF,EAGEC,QAHF,EAIEC,IAJF,EAKEC,MALF,EAMEC,IANF,EAOEC,GAPF,EAQEC,IARF,EASEC,KATF,EAUEC,KAVF,EAWEC,KAXF,EAYEC,KAZF,EAaEC,MAbF,EAcEC,MAdF,EAeEC,MAfF,EAgBEC,KAhBF,EAiBEC,OAjBF,EAkBEC,OAlBF,EAmBEC,OAnBF,EAoBEC,IApBF,EAqBEC,IArBF,EAsBEC,OAtBF,EAuBEC,eAvBF,EAwBEC,IAxBF,EAyBEC,eAzBF,EA0BEC,UA1BF,EA2BEC,SA3BF,EA4BEC,eA5BF,EA6BEC,oBA7BF,EA8BEC,oBA9BF,EA+BEC,mBA/BF,EAgCEC,QAhCF,EAiCEC,eAjCF,EAkCEC,iBAlCF,EAmCEC,aAnCF,EAoCEC,MApCF,QAqCO,qBArCP;AA0CA,SAAQC,oBAAR,EAA8BC,mBAA9B,QAAwD,uCAAxD;AACA,SAAQC,WAAR,QAA0B,2BAA1B;AACA,SAAQC,0BAAR,QAAyC,mCAAzC;AAEA,SAAQnD,OAAO,IAAIoD,UAAnB,QAAoC,yBAApC","sourcesContent":["// COMMON CATEGORY\nexport type {TypedArray, NumberArray, AnyArray} from './types';\n\nexport type {Batch} from './category/common';\n\n// TABLE CATEGORY TYPES\n\nexport type {\n Table,\n ArrayRowTable,\n ObjectRowTable,\n ColumnarTable,\n ArrowTable\n} from './category/table/table-types';\nexport type {\n TableBatch,\n RowArrayTableBatch,\n RowObjectTableBatch,\n ColumnarTableBatch,\n ArrowTableBatch\n} from './category/table/table-types';\n\n// TABLE CATEGORY UTILS\nexport {default as TableBatchBuilder} from './lib/batches/table-batch-builder';\nexport type {TableBatchAggregator} from './lib/batches/table-batch-aggregator';\nexport {default as RowTableBatchAggregator} from './lib/batches/row-table-batch-aggregator';\nexport {default as ColumnarTableBatchAggregator} from './lib/batches/columnar-table-batch-aggregator';\n\nexport {convertToObjectRow, convertToArrayRow} from './lib/utils/row-utils';\n\n// MESH CATEGORY\nexport type {\n MeshTable,\n MeshArrowTable,\n Mesh,\n MeshGeometry,\n MeshAttribute,\n MeshAttributes\n} from './category/mesh/mesh-types';\n\nexport {getMeshSize, getMeshBoundingBox} from './category/mesh/mesh-utils';\nexport {convertMesh} from './category/mesh/convert-mesh';\nexport {\n deduceMeshSchema,\n deduceMeshField,\n makeMeshAttributeMetadata\n} from './category/mesh/deduce-mesh-schema';\n\n// TYPES\n// GIS CATEGORY - GEOJSON\nexport type {GeoJSON, Feature, Geometry, Position, GeoJsonProperties} from './category/gis';\nexport type {\n Point,\n MultiPoint,\n LineString,\n MultiLineString,\n Polygon,\n MultiPolygon\n} from './category/gis';\n\n// GIS CATEGORY - BINARY\nexport type {\n BinaryGeometryType,\n BinaryGeometry,\n BinaryPointGeometry,\n BinaryLineGeometry,\n BinaryPolygonGeometry,\n BinaryAttribute\n} from './category/gis';\nexport type {\n BinaryFeatures,\n BinaryPointFeatures,\n BinaryLineFeatures,\n BinaryPolygonFeatures\n} from './category/gis';\n\n// SCHEMA\nexport {\n Schema,\n Field,\n DataType,\n Null,\n Binary,\n Bool,\n Int,\n Int8,\n Int16,\n Int32,\n Int64,\n Uint8,\n Uint16,\n Uint32,\n Uint64,\n Float,\n Float16,\n Float32,\n Float64,\n Utf8,\n Date,\n DateDay,\n DateMillisecond,\n Time,\n TimeMillisecond,\n TimeSecond,\n Timestamp,\n TimestampSecond,\n TimestampMillisecond,\n TimestampMicrosecond,\n TimestampNanosecond,\n Interval,\n IntervalDayTime,\n IntervalYearMonth,\n FixedSizeList,\n Struct\n} from './lib/schema/schema';\n\n// EXPERIMENTAL APIs\n\n// SCHEMA UTILS\nexport {deduceTypeFromColumn, deduceTypeFromValue} from './lib/schema-utils/deduce-column-type';\nexport {getTypeInfo} from './lib/arrow/get-type-info';\nexport {getArrowTypeFromTypedArray} from './lib/arrow/arrow-like-type-utils';\n\nexport {default as AsyncQueue} from './lib/utils/async-queue';\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.ts"],"names":["default","TableBatchBuilder","RowTableBatchAggregator","ColumnarTableBatchAggregator","convertToObjectRow","convertToArrayRow","getMeshSize","getMeshBoundingBox","convertMesh","deduceMeshSchema","deduceMeshField","makeMeshAttributeMetadata","Schema","Field","DataType","Null","Binary","Bool","Int","Int8","Int16","Int32","Int64","Uint8","Uint16","Uint32","Uint64","Float","Float16","Float32","Float64","Utf8","Date","DateDay","DateMillisecond","Time","TimeMillisecond","TimeSecond","Timestamp","TimestampSecond","TimestampMillisecond","TimestampMicrosecond","TimestampNanosecond","Interval","IntervalDayTime","IntervalYearMonth","FixedSizeList","Struct","deduceTypeFromColumn","deduceTypeFromValue","getTypeInfo","getArrowTypeFromTypedArray","AsyncQueue"],"mappings":"AAuBA,SAAQA,OAAO,IAAIC,iBAAnB,QAA2C,mCAA3C;AAEA,SAAQD,OAAO,IAAIE,uBAAnB,QAAiD,0CAAjD;AACA,SAAQF,OAAO,IAAIG,4BAAnB,QAAsD,+CAAtD;AAEA,SAAQC,kBAAR,EAA4BC,iBAA5B,QAAoD,uBAApD;AAYA,SAAQC,WAAR,EAAqBC,kBAArB,QAA8C,4BAA9C;AACA,SAAQC,WAAR,QAA0B,8BAA1B;AACA,SACEC,gBADF,EAEEC,eAFF,EAGEC,yBAHF,QAIO,oCAJP;AAiDA,SACEC,MADF,EAEEC,KAFF,EAGEC,QAHF,EAIEC,IAJF,EAKEC,MALF,EAMEC,IANF,EAOEC,GAPF,EAQEC,IARF,EASEC,KATF,EAUEC,KAVF,EAWEC,KAXF,EAYEC,KAZF,EAaEC,MAbF,EAcEC,MAdF,EAeEC,MAfF,EAgBEC,KAhBF,EAiBEC,OAjBF,EAkBEC,OAlBF,EAmBEC,OAnBF,EAoBEC,IApBF,EAqBEC,IArBF,EAsBEC,OAtBF,EAuBEC,eAvBF,EAwBEC,IAxBF,EAyBEC,eAzBF,EA0BEC,UA1BF,EA2BEC,SA3BF,EA4BEC,eA5BF,EA6BEC,oBA7BF,EA8BEC,oBA9BF,EA+BEC,mBA/BF,EAgCEC,QAhCF,EAiCEC,eAjCF,EAkCEC,iBAlCF,EAmCEC,aAnCF,EAoCEC,MApCF,QAqCO,qBArCP;AA0CA,SAAQC,oBAAR,EAA8BC,mBAA9B,QAAwD,uCAAxD;AACA,SAAQC,WAAR,QAA0B,2BAA1B;AACA,SAAQC,0BAAR,QAAyC,mCAAzC;AAEA,SAAQnD,OAAO,IAAIoD,UAAnB,QAAoC,yBAApC","sourcesContent":["// COMMON CATEGORY\nexport type {TypedArray, NumberArray, AnyArray} from './types';\n\nexport type {Batch} from './category/common';\n\n// TABLE CATEGORY TYPES\n\nexport type {\n Table,\n ArrayRowTable,\n ObjectRowTable,\n ColumnarTable,\n ArrowTable\n} from './category/table/table-types';\nexport type {\n TableBatch,\n RowArrayTableBatch,\n RowObjectTableBatch,\n ColumnarTableBatch,\n ArrowTableBatch\n} from './category/table/table-types';\n\n// TABLE CATEGORY UTILS\nexport {default as TableBatchBuilder} from './lib/batches/table-batch-builder';\nexport type {TableBatchAggregator} from './lib/batches/table-batch-aggregator';\nexport {default as RowTableBatchAggregator} from './lib/batches/row-table-batch-aggregator';\nexport {default as ColumnarTableBatchAggregator} from './lib/batches/columnar-table-batch-aggregator';\n\nexport {convertToObjectRow, convertToArrayRow} from './lib/utils/row-utils';\n\n// MESH CATEGORY\nexport type {\n MeshTable,\n MeshArrowTable,\n Mesh,\n MeshGeometry,\n MeshAttribute,\n MeshAttributes\n} from './category/mesh/mesh-types';\n\nexport {getMeshSize, getMeshBoundingBox} from './category/mesh/mesh-utils';\nexport {convertMesh} from './category/mesh/convert-mesh';\nexport {\n deduceMeshSchema,\n deduceMeshField,\n makeMeshAttributeMetadata\n} from './category/mesh/deduce-mesh-schema';\n\n// TYPES\n// GIS CATEGORY - GEOJSON\nexport type {GeoJSON, Feature, Geometry, Position, GeoJsonProperties} from './category/gis';\nexport type {\n Point,\n MultiPoint,\n LineString,\n MultiLineString,\n Polygon,\n MultiPolygon,\n GeometryCollection\n} from './category/gis';\n\nexport type {GeojsonGeometryInfo} from './category/gis';\n\n// GIS CATEGORY - FLAT GEOJSON\nexport type {\n FlatFeature,\n FlatIndexedGeometry,\n FlatGeometry,\n FlatGeometryType,\n FlatPoint,\n FlatLineString,\n FlatPolygon\n} from './category/gis';\n\n// GIS CATEGORY - BINARY\nexport type {\n BinaryGeometryType,\n BinaryGeometry,\n BinaryPointGeometry,\n BinaryLineGeometry,\n BinaryPolygonGeometry,\n BinaryAttribute\n} from './category/gis';\nexport type {\n BinaryFeatures,\n BinaryPointFeatures,\n BinaryLineFeatures,\n BinaryPolygonFeatures\n} from './category/gis';\n\n// SCHEMA\nexport {\n Schema,\n Field,\n DataType,\n Null,\n Binary,\n Bool,\n Int,\n Int8,\n Int16,\n Int32,\n Int64,\n Uint8,\n Uint16,\n Uint32,\n Uint64,\n Float,\n Float16,\n Float32,\n Float64,\n Utf8,\n Date,\n DateDay,\n DateMillisecond,\n Time,\n TimeMillisecond,\n TimeSecond,\n Timestamp,\n TimestampSecond,\n TimestampMillisecond,\n TimestampMicrosecond,\n TimestampNanosecond,\n Interval,\n IntervalDayTime,\n IntervalYearMonth,\n FixedSizeList,\n Struct\n} from './lib/schema/schema';\n\n// EXPERIMENTAL APIs\n\n// SCHEMA UTILS\nexport {deduceTypeFromColumn, deduceTypeFromValue} from './lib/schema-utils/deduce-column-type';\nexport {getTypeInfo} from './lib/arrow/get-type-info';\nexport {getArrowTypeFromTypedArray} from './lib/arrow/arrow-like-type-utils';\n\nexport {default as AsyncQueue} from './lib/utils/async-queue';\n"],"file":"index.js"}
package/dist/index.d.ts CHANGED
@@ -12,7 +12,9 @@ export { getMeshSize, getMeshBoundingBox } from './category/mesh/mesh-utils';
12
12
  export { convertMesh } from './category/mesh/convert-mesh';
13
13
  export { deduceMeshSchema, deduceMeshField, makeMeshAttributeMetadata } from './category/mesh/deduce-mesh-schema';
14
14
  export type { GeoJSON, Feature, Geometry, Position, GeoJsonProperties } from './category/gis';
15
- export type { Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon } from './category/gis';
15
+ export type { Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection } from './category/gis';
16
+ export type { GeojsonGeometryInfo } from './category/gis';
17
+ export type { FlatFeature, FlatIndexedGeometry, FlatGeometry, FlatGeometryType, FlatPoint, FlatLineString, FlatPolygon } from './category/gis';
16
18
  export type { BinaryGeometryType, BinaryGeometry, BinaryPointGeometry, BinaryLineGeometry, BinaryPolygonGeometry, BinaryAttribute } from './category/gis';
17
19
  export type { BinaryFeatures, BinaryPointFeatures, BinaryLineFeatures, BinaryPolygonFeatures } from './category/gis';
18
20
  export { Schema, Field, DataType, Null, Binary, Bool, Int, Int8, Int16, Int32, Int64, Uint8, Uint16, Uint32, Uint64, Float, Float16, Float32, Float64, Utf8, Date, DateDay, DateMillisecond, Time, TimeMillisecond, TimeSecond, Timestamp, TimestampSecond, TimestampMillisecond, TimestampMicrosecond, TimestampNanosecond, Interval, IntervalDayTime, IntervalYearMonth, FixedSizeList, Struct } from './lib/schema/schema';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAE/D,YAAY,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAI7C,YAAY,EACV,KAAK,EACL,aAAa,EACb,cAAc,EACd,aAAa,EACb,UAAU,EACX,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EAChB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAC/E,YAAY,EAAC,oBAAoB,EAAC,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAC,OAAO,IAAI,uBAAuB,EAAC,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EAAC,OAAO,IAAI,4BAA4B,EAAC,MAAM,+CAA+C,CAAC;AAEtG,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAG5E,YAAY,EACV,SAAS,EACT,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAC;AACzD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,yBAAyB,EAC1B,MAAM,oCAAoC,CAAC;AAI5C,YAAY,EAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAC5F,YAAY,EACV,KAAK,EACL,UAAU,EACV,UAAU,EACV,eAAe,EACf,OAAO,EACP,YAAY,EACb,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EACN,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,eAAe,EACf,IAAI,EACJ,eAAe,EACf,UAAU,EACV,SAAS,EACT,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,MAAM,EACP,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,uCAAuC,CAAC;AAChG,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAC,0BAA0B,EAAC,MAAM,mCAAmC,CAAC;AAE7E,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAE/D,YAAY,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAI7C,YAAY,EACV,KAAK,EACL,aAAa,EACb,cAAc,EACd,aAAa,EACb,UAAU,EACX,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EAChB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAC,OAAO,IAAI,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAC/E,YAAY,EAAC,oBAAoB,EAAC,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAC,OAAO,IAAI,uBAAuB,EAAC,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EAAC,OAAO,IAAI,4BAA4B,EAAC,MAAM,+CAA+C,CAAC;AAEtG,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAC,MAAM,uBAAuB,CAAC;AAG5E,YAAY,EACV,SAAS,EACT,cAAc,EACd,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,cAAc,EACf,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAC,WAAW,EAAE,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAC;AACzD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,yBAAyB,EAC1B,MAAM,oCAAoC,CAAC;AAI5C,YAAY,EAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAC5F,YAAY,EACV,KAAK,EACL,UAAU,EACV,UAAU,EACV,eAAe,EACf,OAAO,EACP,YAAY,EACZ,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAC,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AAGxD,YAAY,EACV,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,WAAW,EACZ,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EACN,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,eAAe,EACf,IAAI,EACJ,eAAe,EACf,UAAU,EACV,SAAS,EACT,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,MAAM,EACP,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAC,oBAAoB,EAAE,mBAAmB,EAAC,MAAM,uCAAuC,CAAC;AAChG,OAAO,EAAC,WAAW,EAAC,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAC,0BAA0B,EAAC,MAAM,mCAAmC,CAAC;AAE7E,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /*
3
- import type {TypedArray} from '../../types';
3
+ import type {TypedArray} from '../../types.js';
4
4
  import {
5
5
  DataType,
6
6
  Float32,
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // import type {ArrayRowTableBatch, ObjectRowTableBatch} from '../../category/table';
3
+ // import type {ArrayRowTableBatch, ObjectRowTableBatch} from '../../category/table.js';
4
4
  const row_utils_1 = require("../utils/row-utils");
5
5
  const DEFAULT_ROW_COUNT = 100;
6
6
  class RowTableBatchAggregator {
@@ -15,7 +15,7 @@
15
15
  // Utf8,
16
16
  // TimestampMillisecond,
17
17
  // Null
18
- // } from '../schema';
18
+ // } from '../schema.js';
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.deduceTypeFromValue = exports.deduceTypeFromColumn = void 0;
21
21
  // const TYPED_ARRAY_TO_TYPE = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/schema",
3
- "version": "3.1.0-beta.7",
3
+ "version": "3.1.3",
4
4
  "description": "Table format APIs for JSON, CSV, etc...",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -29,10 +29,10 @@
29
29
  ],
30
30
  "scripts": {
31
31
  "pre-build": "npm run build-bundle",
32
- "build-bundle": "esbuild src/bundle.ts --bundle --outfile=dist/bundle.js"
32
+ "build-bundle": "esbuild src/bundle.ts --bundle --outfile=dist/dist.min.js"
33
33
  },
34
34
  "dependencies": {
35
35
  "@types/geojson": "^7946.0.7"
36
36
  },
37
- "gitHead": "f3b4d81ac02758398c4e4eef5e556b206ef2dfbe"
37
+ "gitHead": "4a690c369779346d73c9a27395d1c08d77d279a4"
38
38
  }
@@ -1,12 +1,79 @@
1
1
  // GIS
2
2
  import type {TypedArray} from '../types';
3
+ import type {Feature, Geometry, Point, LineString, Polygon} from 'geojson';
3
4
 
4
5
  // GEOJSON FORMAT GEOMETRY
5
6
 
6
7
  // eslint-disable-next-line import/no-unresolved
7
8
  export type {GeoJSON, Feature, Geometry, Position, GeoJsonProperties} from 'geojson';
8
9
  // eslint-disable-next-line import/no-unresolved
9
- export type {Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon} from 'geojson';
10
+ export type {
11
+ Point,
12
+ MultiPoint,
13
+ LineString,
14
+ MultiLineString,
15
+ Polygon,
16
+ MultiPolygon,
17
+ GeometryCollection
18
+ } from 'geojson';
19
+
20
+ // Aggregate information for converting GeoJSON into other formats
21
+ export type GeojsonGeometryInfo = {
22
+ coordLength: number;
23
+ pointPositionsCount: number;
24
+ pointFeaturesCount: number;
25
+ linePositionsCount: number;
26
+ linePathsCount: number;
27
+ lineFeaturesCount: number;
28
+ polygonPositionsCount: number;
29
+ polygonObjectsCount: number;
30
+ polygonRingsCount: number;
31
+ polygonFeaturesCount: number;
32
+ };
33
+
34
+ // FLAT GEOJSON FORMAT GEOMETRY
35
+ export type FlatGeometryType = 'Point' | 'LineString' | 'Polygon';
36
+ type RemoveCoordinatesField<Type> = {
37
+ [Property in keyof Type as Exclude<Property, 'coordinates'>]: Type[Property];
38
+ };
39
+
40
+ /**
41
+ * Generic flat geometry data storage type
42
+ */
43
+ export type FlatIndexedGeometry = {
44
+ data: number[];
45
+ indices: number[];
46
+ };
47
+
48
+ /**
49
+ * GeoJSON (Multi)Point geometry with coordinate data flattened into `data` array and indexed by `indices`
50
+ */
51
+ export type FlatPoint = RemoveCoordinatesField<Point> & FlatIndexedGeometry;
52
+
53
+ /**
54
+ * GeoJSON (Multi)LineString geometry with coordinate data flattened into `data` array and indexed by `indices`
55
+ */
56
+ export type FlatLineString = RemoveCoordinatesField<LineString> & FlatIndexedGeometry;
57
+
58
+ /**
59
+ * GeoJSON (Multi)Polygon geometry with coordinate data flattened into `data` array and indexed by 2D `indices`
60
+ */
61
+ export type FlatPolygon = RemoveCoordinatesField<Polygon> & {
62
+ data: number[];
63
+ indices: number[][];
64
+ areas: number[][];
65
+ };
66
+
67
+ export type FlatGeometry = FlatPoint | FlatLineString | FlatPolygon;
68
+
69
+ type FlattenGeometry<Type> = {
70
+ [Property in keyof Type]: Type[Property] extends Geometry ? FlatGeometry : Type[Property];
71
+ };
72
+
73
+ /**
74
+ * GeoJSON Feature with Geometry replaced by FlatGeometry
75
+ */
76
+ export type FlatFeature = FlattenGeometry<Feature>;
10
77
 
11
78
  // BINARY FORMAT GEOMETRY
12
79
 
@@ -37,6 +104,7 @@ export type BinaryPolygonGeometry = {
37
104
  positions: BinaryAttribute;
38
105
  polygonIndices: BinaryAttribute;
39
106
  primitivePolygonIndices: BinaryAttribute;
107
+ triangles?: BinaryAttribute;
40
108
  };
41
109
 
42
110
  export type BinaryProperties = {
package/src/index.ts CHANGED
@@ -55,7 +55,21 @@ export type {
55
55
  LineString,
56
56
  MultiLineString,
57
57
  Polygon,
58
- MultiPolygon
58
+ MultiPolygon,
59
+ GeometryCollection
60
+ } from './category/gis';
61
+
62
+ export type {GeojsonGeometryInfo} from './category/gis';
63
+
64
+ // GIS CATEGORY - FLAT GEOJSON
65
+ export type {
66
+ FlatFeature,
67
+ FlatIndexedGeometry,
68
+ FlatGeometry,
69
+ FlatGeometryType,
70
+ FlatPoint,
71
+ FlatLineString,
72
+ FlatPolygon
59
73
  } from './category/gis';
60
74
 
61
75
  // GIS CATEGORY - BINARY