@bilig/protocol
Advanced tools
+2
-2
| { | ||
| "name": "@bilig/protocol", | ||
| "version": "0.157.0", | ||
| "version": "0.159.0", | ||
| "description": "Shared protocol types, enums, opcodes, and spreadsheet limits for bilig.", | ||
@@ -41,3 +41,3 @@ "keywords": [ | ||
| "scripts": { | ||
| "build": "tsc -p tsconfig.json" | ||
| "build": "rm -rf dist tsconfig.tsbuildinfo && tsc -p tsconfig.json" | ||
| }, | ||
@@ -44,0 +44,0 @@ "engines": { |
| export {}; |
| import { describe, expect, it } from 'vitest'; | ||
| import { ErrorCode, ValueTag } from './enums.js'; | ||
| import { formatCellDisplayValue, formatGeneralNumberValue } from './formatting.js'; | ||
| import { formatErrorCode } from './types.js'; | ||
| describe('formatCellDisplayValue', () => { | ||
| it('renders Excel date serials without local timezone drift', () => { | ||
| expect(formatCellDisplayValue({ tag: ValueTag.Number, value: 46023 }, 'date:short')).toBe('01/01/2026'); | ||
| expect(formatCellDisplayValue({ tag: ValueTag.Number, value: 46357 }, 'date:short')).toBe('12/01/2026'); | ||
| }); | ||
| it('uses General-format text for numeric display coercion', () => { | ||
| expect(formatGeneralNumberValue(1989)).toBe('1989'); | ||
| expect(formatGeneralNumberValue(1)).toBe('1'); | ||
| expect(formatGeneralNumberValue(0.1 + 0.2)).toBe('0.3'); | ||
| expect(formatCellDisplayValue({ tag: ValueTag.Number, value: 0.1 + 0.2 }, 'general')).toBe('0.3'); | ||
| }); | ||
| it('renders Excel NULL errors without downgrading them', () => { | ||
| expect(formatErrorCode(ErrorCode.Null)).toBe('#NULL!'); | ||
| expect(formatCellDisplayValue({ tag: ValueTag.Error, code: ErrorCode.Null }, undefined)).toBe('#NULL!'); | ||
| }); | ||
| }); | ||
| //# sourceMappingURL=formatting.test.js.map |
| {"version":3,"file":"formatting.test.js","sourceRoot":"","sources":["../src/formatting.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,sBAAsB,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACvG,MAAM,CAAC,sBAAsB,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACzG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnD,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC7C,MAAM,CAAC,wBAAwB,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACvD,MAAM,CAAC,sBAAsB,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACnG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACtD,MAAM,CAAC,sBAAsB,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzG,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"} |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
231150
-1.13%48
-5.88%3693
-0.57%