cborg 1.5.4 → 1.6.0

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/README.md CHANGED
@@ -143,6 +143,7 @@ Decode valid CBOR bytes from a `Uint8Array` (or `Buffer`) and return a JavaScrip
143
143
 
144
144
  * `allowIndefinite` (boolean, default `true`): when the indefinite length additional information (`31`) is encountered for any type (arrays, maps, strings, bytes) _or_ a "break" is encountered, an error will be thrown.
145
145
  * `allowUndefined` (boolean, default `true`): when major 7, minor 23 (`undefined`) is encountered, an error will be thrown. To disallow `undefined` on encode, a custom [type encoder](#type-encoders) for `'undefined'` will need to be supplied.
146
+ * `coerceUndefinedToNull` (boolean, default `false`): when both `allowUndefined` and `coerceUndefinedToNull` are set to `true`, all `undefined` tokens (major `7` minor `23`: `0xf7`) will be coerced to `null` tokens, such that `undefined` is an allowed token but will not appear in decoded values.
146
147
  * `allowInfinity` (boolean, default `true`): when an IEEE 754 `Infinity` or `-Infinity` value is encountered when decoding a major 7, an error will be thrown. To disallow `Infinity` and `-Infinity` on encode, a custom [type encoder](#type-encoders) for `'number'` will need to be supplied.
147
148
  * `allowNaN` (boolean, default `true`): when an IEEE 754 `NaN` value is encountered when decoding a major 7, an error will be thrown. To disallow `NaN` on encode, a custom [type encoder](#type-encoders) for `'number'` will need to be supplied.
148
149
  * `allowBigInt` (boolean, default `true`): when an integer outside of the safe integer range is encountered, an error will be thrown. To disallow `BigInt`s on encode, a custom [type encoder](#type-encoders) for `'bigint'` will need to be supplied.
@@ -198,6 +198,8 @@ describe('float', () => {
198
198
  ]), { allowIndefinite: false }), /indefinite/);
199
199
  });
200
200
  it('can switch off undefined support', () => {
201
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('f7')), undefined);
202
+ assert.throws(() => decode.decode(byteUtils.fromHex('f7'), { allowUndefined: false }), /undefined/);
201
203
  assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f7')), [
202
204
  1,
203
205
  2,
@@ -205,6 +207,20 @@ describe('float', () => {
205
207
  ]);
206
208
  assert.throws(() => decode.decode(byteUtils.fromHex('830102f7'), { allowUndefined: false }), /undefined/);
207
209
  });
210
+ it('can coerce undefined to null', () => {
211
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('f7'), { coerceUndefinedToNull: false }), undefined);
212
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('f7'), { coerceUndefinedToNull: true }), null);
213
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f7'), { coerceUndefinedToNull: false }), [
214
+ 1,
215
+ 2,
216
+ undefined
217
+ ]);
218
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f7'), { coerceUndefinedToNull: true }), [
219
+ 1,
220
+ 2,
221
+ null
222
+ ]);
223
+ });
208
224
  it('can switch off Infinity support', () => {
209
225
  assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f97c00')), [
210
226
  1,
package/cjs/lib/7float.js CHANGED
@@ -13,6 +13,8 @@ const MINOR_UNDEFINED = 23;
13
13
  function decodeUndefined(_data, _pos, _minor, options) {
14
14
  if (options.allowUndefined === false) {
15
15
  throw new Error(`${ common.decodeErrPrefix } undefined values are not supported`);
16
+ } else if (options.coerceUndefinedToNull === true) {
17
+ return new token.Token(token.Type.null, null, 1);
16
18
  }
17
19
  return new token.Token(token.Type.undefined, undefined, 1);
18
20
  }
@@ -198,6 +198,8 @@ describe('float', () => {
198
198
  ]), { allowIndefinite: false }), /indefinite/);
199
199
  });
200
200
  it('can switch off undefined support', () => {
201
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('f7')), undefined);
202
+ assert.throws(() => decode.decode(byteUtils.fromHex('f7'), { allowUndefined: false }), /undefined/);
201
203
  assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f7')), [
202
204
  1,
203
205
  2,
@@ -205,6 +207,20 @@ describe('float', () => {
205
207
  ]);
206
208
  assert.throws(() => decode.decode(byteUtils.fromHex('830102f7'), { allowUndefined: false }), /undefined/);
207
209
  });
210
+ it('can coerce undefined to null', () => {
211
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('f7'), { coerceUndefinedToNull: false }), undefined);
212
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('f7'), { coerceUndefinedToNull: true }), null);
213
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f7'), { coerceUndefinedToNull: false }), [
214
+ 1,
215
+ 2,
216
+ undefined
217
+ ]);
218
+ assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f7'), { coerceUndefinedToNull: true }), [
219
+ 1,
220
+ 2,
221
+ null
222
+ ]);
223
+ });
208
224
  it('can switch off Infinity support', () => {
209
225
  assert.deepStrictEqual(decode.decode(byteUtils.fromHex('830102f97c00')), [
210
226
  1,
@@ -195,6 +195,8 @@ describe('float', () => {
195
195
  ]), { allowIndefinite: false }), /indefinite/);
196
196
  });
197
197
  it('can switch off undefined support', () => {
198
+ assert.deepStrictEqual(decode(fromHex('f7')), undefined);
199
+ assert.throws(() => decode(fromHex('f7'), { allowUndefined: false }), /undefined/);
198
200
  assert.deepStrictEqual(decode(fromHex('830102f7')), [
199
201
  1,
200
202
  2,
@@ -202,6 +204,20 @@ describe('float', () => {
202
204
  ]);
203
205
  assert.throws(() => decode(fromHex('830102f7'), { allowUndefined: false }), /undefined/);
204
206
  });
207
+ it('can coerce undefined to null', () => {
208
+ assert.deepStrictEqual(decode(fromHex('f7'), { coerceUndefinedToNull: false }), undefined);
209
+ assert.deepStrictEqual(decode(fromHex('f7'), { coerceUndefinedToNull: true }), null);
210
+ assert.deepStrictEqual(decode(fromHex('830102f7'), { coerceUndefinedToNull: false }), [
211
+ 1,
212
+ 2,
213
+ undefined
214
+ ]);
215
+ assert.deepStrictEqual(decode(fromHex('830102f7'), { coerceUndefinedToNull: true }), [
216
+ 1,
217
+ 2,
218
+ null
219
+ ]);
220
+ });
205
221
  it('can switch off Infinity support', () => {
206
222
  assert.deepStrictEqual(decode(fromHex('830102f97c00')), [
207
223
  1,
package/esm/lib/7float.js CHANGED
@@ -11,6 +11,8 @@ const MINOR_UNDEFINED = 23;
11
11
  export function decodeUndefined(_data, _pos, _minor, options) {
12
12
  if (options.allowUndefined === false) {
13
13
  throw new Error(`${ decodeErrPrefix } undefined values are not supported`);
14
+ } else if (options.coerceUndefinedToNull === true) {
15
+ return new Token(Type.null, null, 1);
14
16
  }
15
17
  return new Token(Type.undefined, undefined, 1);
16
18
  }
@@ -195,6 +195,8 @@ describe('float', () => {
195
195
  ]), { allowIndefinite: false }), /indefinite/);
196
196
  });
197
197
  it('can switch off undefined support', () => {
198
+ assert.deepStrictEqual(decode(fromHex('f7')), undefined);
199
+ assert.throws(() => decode(fromHex('f7'), { allowUndefined: false }), /undefined/);
198
200
  assert.deepStrictEqual(decode(fromHex('830102f7')), [
199
201
  1,
200
202
  2,
@@ -202,6 +204,20 @@ describe('float', () => {
202
204
  ]);
203
205
  assert.throws(() => decode(fromHex('830102f7'), { allowUndefined: false }), /undefined/);
204
206
  });
207
+ it('can coerce undefined to null', () => {
208
+ assert.deepStrictEqual(decode(fromHex('f7'), { coerceUndefinedToNull: false }), undefined);
209
+ assert.deepStrictEqual(decode(fromHex('f7'), { coerceUndefinedToNull: true }), null);
210
+ assert.deepStrictEqual(decode(fromHex('830102f7'), { coerceUndefinedToNull: false }), [
211
+ 1,
212
+ 2,
213
+ undefined
214
+ ]);
215
+ assert.deepStrictEqual(decode(fromHex('830102f7'), { coerceUndefinedToNull: true }), [
216
+ 1,
217
+ 2,
218
+ null
219
+ ]);
220
+ });
205
221
  it('can switch off Infinity support', () => {
206
222
  assert.deepStrictEqual(decode(fromHex('830102f97c00')), [
207
223
  1,
package/interface.ts CHANGED
@@ -33,6 +33,7 @@ export type TagDecoder = (inner: any) => any
33
33
  export interface DecodeOptions {
34
34
  allowIndefinite?: boolean
35
35
  allowUndefined?: boolean
36
+ coerceUndefinedToNull?: boolean
36
37
  allowInfinity?: boolean
37
38
  allowNaN?: boolean
38
39
  allowBigInt?: boolean
package/lib/7float.js CHANGED
@@ -26,6 +26,8 @@ const MINOR_UNDEFINED = 23
26
26
  export function decodeUndefined (_data, _pos, _minor, options) {
27
27
  if (options.allowUndefined === false) {
28
28
  throw new Error(`${decodeErrPrefix} undefined values are not supported`)
29
+ } else if (options.coerceUndefinedToNull === true) {
30
+ return new Token(Type.null, null, 1)
29
31
  }
30
32
  return new Token(Type.undefined, undefined, 1)
31
33
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cborg",
3
- "version": "1.5.4",
3
+ "version": "1.6.0",
4
4
  "description": "Fast CBOR with a focus on strictness",
5
5
  "main": "./cjs/cborg.js",
6
6
  "bin": {
@@ -13,11 +13,13 @@
13
13
  "build:copy": "mkdir -p dist/test && cp test/*.js dist/test/ && cp -a tsconfig.json *.js *.ts lib dist/",
14
14
  "build:types": "npm run build:copy && cd dist && tsc --build",
15
15
  "test:cjs": "npm run build && mocha dist/cjs/node-test/test-*.js dist/cjs/node-test/node-test-*.js",
16
+ "test:esm": "npm run build && mocha dist/esm/node-test/test-*.js dist/esm/node-test/node-test-*.js",
16
17
  "test:node": "c8 --check-coverage --branches 100 --functions 100 --lines 100 mocha test/test-*.js test/node-test-*.js",
17
- "test:browser:cjs": "polendina --page --worker --serviceworker --cleanup dist/cjs/node-test/test-*.js",
18
- "test:browser:esm": "polendina --page --worker --serviceworker --cleanup dist/esm/node-test/test-*.js",
18
+ "test:browser:cjs": "polendina --page --worker --serviceworker --cleanup dist/cjs/browser-test/test-*.js",
19
+ "test:browser:esm": "polendina --page --worker --serviceworker --cleanup dist/esm/browser-test/test-*.js",
19
20
  "test:browser": "npm run test:browser:cjs && npm run test:browser:cjs",
20
- "test": "npm run lint && npm run test:node && npm run test:cjs && npm run test:browser",
21
+ "test": "npm run lint && npm run test:node && npm run test:esm && npm run test:browser:esm",
22
+ "test:ci": "npm run lint && npm run test:node && npm run test:cjs && npm run test:esm && npm run test:browser",
21
23
  "coverage": "c8 --reporter=html mocha test/test-*.js && npx st -d coverage -p 8080"
22
24
  },
23
25
  "repository": {
@@ -30,14 +32,14 @@
30
32
  "author": "Rod <rod@vagg.org> (http://r.va.gg/)",
31
33
  "license": "Apache-2.0",
32
34
  "devDependencies": {
33
- "c8": "^7.6.0",
34
- "chai": "^4.3.3",
35
- "ipjs": "^5.0.0",
36
- "ipld-garbage": "^4.0.1",
37
- "mocha": "^9.0.0",
38
- "polendina": "^2.0.0",
39
- "standard": "^16.0.3",
40
- "typescript": "^4.2.4"
35
+ "c8": "^7.10.0",
36
+ "chai": "^4.3.4",
37
+ "ipjs": "^5.2.0",
38
+ "ipld-garbage": "^4.0.10",
39
+ "mocha": "^9.1.3",
40
+ "polendina": "~2.0.1",
41
+ "standard": "^16.0.4",
42
+ "typescript": "~4.5.3"
41
43
  },
42
44
  "exports": {
43
45
  ".": {
@@ -97,10 +97,19 @@ describe('float', () => {
97
97
  })
98
98
 
99
99
  it('can switch off undefined support', () => {
100
+ assert.deepStrictEqual(decode(fromHex('f7')), undefined)
101
+ assert.throws(() => decode(fromHex('f7'), { allowUndefined: false }), /undefined/)
100
102
  assert.deepStrictEqual(decode(fromHex('830102f7')), [1, 2, undefined])
101
103
  assert.throws(() => decode(fromHex('830102f7'), { allowUndefined: false }), /undefined/)
102
104
  })
103
105
 
106
+ it('can coerce undefined to null', () => {
107
+ assert.deepStrictEqual(decode(fromHex('f7'), { coerceUndefinedToNull: false }), undefined)
108
+ assert.deepStrictEqual(decode(fromHex('f7'), { coerceUndefinedToNull: true }), null)
109
+ assert.deepStrictEqual(decode(fromHex('830102f7'), { coerceUndefinedToNull: false }), [1, 2, undefined])
110
+ assert.deepStrictEqual(decode(fromHex('830102f7'), { coerceUndefinedToNull: true }), [1, 2, null])
111
+ })
112
+
104
113
  it('can switch off Infinity support', () => {
105
114
  assert.deepStrictEqual(decode(fromHex('830102f97c00')), [1, 2, Infinity])
106
115
  assert.deepStrictEqual(decode(fromHex('830102f9fc00')), [1, 2, -Infinity])
@@ -23,6 +23,7 @@ export declare type TagDecoder = (inner: any) => any;
23
23
  export interface DecodeOptions {
24
24
  allowIndefinite?: boolean;
25
25
  allowUndefined?: boolean;
26
+ coerceUndefinedToNull?: boolean;
26
27
  allowInfinity?: boolean;
27
28
  allowNaN?: boolean;
28
29
  allowBigInt?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAA;AAE7B,oBAAY,mBAAmB,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,mBAAmB,EAAE,CAAA;AAEzE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,SAAS,GAAG,SAAS,CAAA;IAC7B,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;IACnB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAA;CACvC;AAED,oBAAY,mBAAmB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,KAAK,mBAAmB,GAAG,IAAI,CAAA;AAEtI,oBAAY,iBAAiB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,KAAK,mBAAmB,CAAA;AAE7H,oBAAY,gBAAgB,GAAG;IAC7B,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACvD,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CAAC;IAC5C,WAAW,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;CAC7D,CAAA;AAED,oBAAY,SAAS,GAAG,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,EAAE,KAAK,MAAM,CAAA;AAEpF,oBAAY,gBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,UAAU,GAAG,SAAS,CAAA;AAEvE,MAAM,WAAW,eAAe;IAC9B,IAAI,IAAI,OAAO,CAAC;IAChB,IAAI,IAAI,KAAK,CAAA;CACd;AAED,oBAAY,UAAU,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AAE5C,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,YAAY,CAAC,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAAA;KAAE,CAAA;CAC3D"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAA;AAE7B,oBAAY,mBAAmB,GAAG,KAAK,GAAG,KAAK,EAAE,GAAG,mBAAmB,EAAE,CAAA;AAEzE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,SAAS,GAAG,SAAS,CAAA;IAC7B,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;IACnB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAA;CACvC;AAED,oBAAY,mBAAmB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,KAAK,mBAAmB,GAAG,IAAI,CAAA;AAEtI,oBAAY,iBAAiB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,KAAK,mBAAmB,CAAA;AAE7H,oBAAY,gBAAgB,GAAG;IAC7B,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACvD,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CAAC;IAC5C,WAAW,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;CAC7D,CAAA;AAED,oBAAY,SAAS,GAAG,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,EAAE,KAAK,MAAM,CAAA;AAEpF,oBAAY,gBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,UAAU,GAAG,SAAS,CAAA;AAEvE,MAAM,WAAW,eAAe;IAC9B,IAAI,IAAI,OAAO,CAAC;IAChB,IAAI,IAAI,KAAK,CAAA;CACd;AAED,oBAAY,UAAU,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;AAE5C,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,eAAe,CAAA;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,YAAY,CAAC,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAAA;KAAE,CAAA;CAC3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"7float.d.ts","sourceRoot":"","sources":["../../lib/7float.js"],"names":[],"mappings":"AAkBA;;;;;;GAMG;AACH,uCANW,UAAU,QACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAOjB;AAED;;;;;;GAMG;AACH,mCANW,UAAU,QACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAOjB;AAoBD;;;;;;GAMG;AACH,oCANW,UAAU,OACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAIjB;AAED;;;;;;GAMG;AACH,oCANW,UAAU,OACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAIjB;AAED;;;;;;GAMG;AACH,oCANW,UAAU,OACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAIjB;AAED;;;;GAIG;AACH,iCAJW,EAAE,SACF,KAAK,WACL,aAAa,QAwCvB;;IAED;;;;OAIG;IACH,0FAqBC;;;iBAhKY,OAAO,SAAS,EAAE,EAAE;4BACpB,OAAO,cAAc,EAAE,aAAa;4BACpC,OAAO,cAAc,EAAE,aAAa"}
1
+ {"version":3,"file":"7float.d.ts","sourceRoot":"","sources":["../../lib/7float.js"],"names":[],"mappings":"AAkBA;;;;;;GAMG;AACH,uCANW,UAAU,QACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CASjB;AAED;;;;;;GAMG;AACH,mCANW,UAAU,QACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAOjB;AAoBD;;;;;;GAMG;AACH,oCANW,UAAU,OACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAIjB;AAED;;;;;;GAMG;AACH,oCANW,UAAU,OACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAIjB;AAED;;;;;;GAMG;AACH,oCANW,UAAU,OACV,MAAM,UACN,MAAM,WACN,aAAa,GACX,KAAK,CAIjB;AAED;;;;GAIG;AACH,iCAJW,EAAE,SACF,KAAK,WACL,aAAa,QAwCvB;;IAED;;;;OAIG;IACH,0FAqBC;;;iBAlKY,OAAO,SAAS,EAAE,EAAE;4BACpB,OAAO,cAAc,EAAE,aAAa;4BACpC,OAAO,cAAc,EAAE,aAAa"}