node-index.js 1.1 KB

12345678910111213141516171819202122232425
  1. export { Packr, Encoder, addExtension, pack, encode, NEVER, ALWAYS, DECIMAL_ROUND, DECIMAL_FIT } from './pack.js'
  2. export { Unpackr, Decoder, C1, unpack, unpackMultiple, decode, FLOAT32_OPTIONS, clearSource, roundFloat32, isNativeAccelerationEnabled } from './unpack.js'
  3. import './struct.js'
  4. export { PackrStream, UnpackrStream, PackrStream as EncoderStream, UnpackrStream as DecoderStream } from './stream.js'
  5. export { decodeIter, encodeIter } from './iterators.js'
  6. export const useRecords = false
  7. export const mapsAsObjects = true
  8. import { setExtractor } from './unpack.js'
  9. import { createRequire } from 'module'
  10. const nativeAccelerationDisabled = process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED !== undefined && process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase() === 'true';
  11. if (!nativeAccelerationDisabled) {
  12. let extractor
  13. try {
  14. if (typeof require == 'function')
  15. extractor = require('msgpackr-extract')
  16. else
  17. extractor = createRequire(import.meta.url)('msgpackr-extract')
  18. if (extractor)
  19. setExtractor(extractor.extractStrings)
  20. } catch (error) {
  21. // native module is optional
  22. }
  23. }