{
  "version": 3,
  "sources": ["../src/index.ts", "../src/lib/parsers/parse-bson.ts", "../src/bson-format.ts", "../src/bson-loader.ts", "../src/lib/encoders/encode-bson.ts", "../src/bson-writer.ts"],
  "sourcesContent": ["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nexport type {BSONLoaderOptions} from './bson-loader';\nexport {BSONLoader} from './bson-loader';\nexport {BSONWriter} from './bson-writer';\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {DeserializeOptions} from 'bson';\nimport * as BSON from 'bson';\n\nexport type ParseBSONOptions = DeserializeOptions;\n\nexport function parseBSONSync(\n  value: ArrayBuffer,\n  options?: ParseBSONOptions\n): Record<string, unknown> {\n  const parsedData = BSON.deserialize(new Uint8Array(value), options);\n  return parsedData;\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {Format} from '@loaders.gl/loader-utils';\n\nexport const BSONFormat = {\n  name: 'BSON',\n  id: 'bson',\n  module: 'bson',\n  extensions: ['bson'],\n  mimeTypes: ['application/bson'],\n  category: 'json',\n  binary: true\n} as const satisfies Format;\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {ParseBSONOptions} from './lib/parsers/parse-bson';\nimport {parseBSONSync} from './lib/parsers/parse-bson';\nimport {BSONFormat} from './bson-format';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\n/**\n * @param table -\n * @param bsonpaths -\n */\nexport type BSONLoaderOptions = LoaderOptions & {\n  bson?: ParseBSONOptions;\n};\n\nexport const BSONLoader = {\n  ...BSONFormat,\n  dataType: null as unknown as Record<string, unknown>,\n  batchType: null as never,\n  name: 'BSON',\n  id: 'bson',\n  module: 'bson',\n  version: VERSION,\n  extensions: ['bson'],\n  mimeTypes: ['application/bson'],\n  category: 'json',\n  binary: true,\n  parse,\n  parseSync,\n  options: {\n    bson: {}\n  }\n} as const satisfies LoaderWithParser<Record<string, unknown>, never, BSONLoaderOptions>;\n\nasync function parse(arrayBuffer: ArrayBuffer, options?: BSONLoaderOptions) {\n  const bsonOptions = {...BSONLoader.options.bson, ...options?.bson};\n  return parseBSONSync(arrayBuffer, bsonOptions);\n}\n\nfunction parseSync(arrayBuffer: ArrayBuffer, options?: BSONLoaderOptions) {\n  const bsonOptions = {...BSONLoader.options.bson, ...options?.bson};\n  return parseBSONSync(arrayBuffer, bsonOptions);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {SerializeOptions} from 'bson';\nimport * as BSON from 'bson';\nimport {ensureArrayBuffer} from '@loaders.gl/loader-utils';\n\nexport type EncodeBSONOptions = SerializeOptions;\n\nexport function encodeBSONSync(\n  value: Record<string, unknown>,\n  options?: EncodeBSONOptions\n): ArrayBuffer {\n  const uint8Array = BSON.serialize(value);\n  // TODO - make sure the uint8array occupies the entire buffer.\n  return ensureArrayBuffer(uint8Array);\n}\n", "// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {WriterWithEncoder, WriterOptions} from '@loaders.gl/loader-utils';\nimport type {EncodeBSONOptions} from './lib/encoders/encode-bson';\nimport {encodeBSONSync} from './lib/encoders/encode-bson';\nimport {BSONFormat} from './bson-format';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\nexport type BSONWriterOptions = WriterOptions & {\n  bson?: EncodeBSONOptions\n}\n\nexport const BSONWriter = {\n  ...BSONFormat,\n  name: 'BSON',\n  id: 'bson',\n  module: 'bson',\n  version: VERSION,\n  extensions: ['bson'],\n  options: {\n    bson: {}\n  },\n  async encode(data: Record<string, unknown>, options?: WriterOptions): Promise<ArrayBuffer> {\n    return encodeBSONSync(data, {}); // options\n  },\n  encodeSync(data: Record<string, unknown>, options?: WriterOptions): ArrayBuffer {\n    return encodeBSONSync(data, {}); // options\n  }\n} as const satisfies WriterWithEncoder<Record<string, unknown>, never, BSONWriterOptions>;\n"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;ACKA,WAAsB;AAIhB,SAAU,cACd,OACA,SAA0B;AAE1B,QAAM,aAAkB,iBAAY,IAAI,WAAW,KAAK,GAAG,OAAO;AAClE,SAAO;AACT;;;ACTO,IAAM,aAAa;EACxB,MAAM;EACN,IAAI;EACJ,QAAQ;EACR,YAAY,CAAC,MAAM;EACnB,WAAW,CAAC,kBAAkB;EAC9B,UAAU;EACV,QAAQ;;;;ACFV,IAAM,UAAU,OAAoC,UAAe;AAU5D,IAAM,aAAa;EACxB,GAAG;EACH,UAAU;EACV,WAAW;EACX,MAAM;EACN,IAAI;EACJ,QAAQ;EACR,SAAS;EACT,YAAY,CAAC,MAAM;EACnB,WAAW,CAAC,kBAAkB;EAC9B,UAAU;EACV,QAAQ;EACR;EACA;EACA,SAAS;IACP,MAAM,CAAA;;;AAIV,eAAe,MAAM,aAA0B,SAA2B;AACxE,QAAM,cAAc,EAAC,GAAG,WAAW,QAAQ,MAAM,GAAG,mCAAS,KAAI;AACjE,SAAO,cAAc,aAAa,WAAW;AAC/C;AAEA,SAAS,UAAU,aAA0B,SAA2B;AACtE,QAAM,cAAc,EAAC,GAAG,WAAW,QAAQ,MAAM,GAAG,mCAAS,KAAI;AACjE,SAAO,cAAc,aAAa,WAAW;AAC/C;;;AC3CA,IAAAA,QAAsB;AACtB,0BAAgC;AAI1B,SAAU,eACd,OACA,SAA2B;AAE3B,QAAM,aAAkB,gBAAU,KAAK;AAEvC,aAAO,uCAAkB,UAAU;AACrC;;;ACNA,IAAMC,WAAU,OAAoC,UAAe;AAM5D,IAAM,aAAa;EACxB,GAAG;EACH,MAAM;EACN,IAAI;EACJ,QAAQ;EACR,SAASA;EACT,YAAY,CAAC,MAAM;EACnB,SAAS;IACP,MAAM,CAAA;;EAER,MAAM,OAAO,MAA+B,SAAuB;AACjE,WAAO,eAAe,MAAM,CAAA,CAAE;EAChC;EACA,WAAW,MAA+B,SAAuB;AAC/D,WAAO,eAAe,MAAM,CAAA,CAAE;EAChC;;",
  "names": ["BSON", "VERSION"]
}
