Conversation
SheetJS 0.20.3 treats `.` in a number format as fractional seconds, so formatting a date cell with `dd.mm.yyyy`, `d.m.yyyy` or `dd.mm` throws and the cell keeps only its raw value. `sheet_to_csv` then prints the Excel serial (`46265` instead of `31.08.2026`), and the model has to convert every date by hand. Dotted date formats are the default in many European locales, including Icelandic bank exports. Read the workbook with `cellNF` so number formats stay on the cells, and for number cells that have a date format but no formatted text, render them again with the dots quoted as literals, honouring the workbook's 1904 date system. Every other cell is left as SheetJS formatted it. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the 鈿欙笍 Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
The dot-quoting regex rewrote every `.` in the number format, including dots inside `"..."` literals and after a backslash escape. A format such as `d. mmmm yyyy "kl." hh:mm` became unbalanced, SheetJS still threw, and the cell stayed a serial. Skip quoted runs and escaped characters so only bare separator dots are quoted. The rich spreadsheet preview reads the workbook on its own path and never ran the date fill, so the same cell showed a serial in the preview and a date in the chat text. Move the helper to `spreadsheetDates.ts` as a workbook-level function and call it from both `excelSheetToText` and `excelSheetToHtml`. Extend the fixture with a quoted-literal format, a backslash-escaped format and a fractional-seconds format, and cover the preview path in html.spec. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Author
|
Superseded: the upstream PR LibreChat-AI#16442 commit is cherry-picked onto apro-deploy as 8c8aeea. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings #78 onto
apro-deployas a single commit (cherry-pick of e82d21d, applied cleanly on 3fa1ecc) so the Fastland LibreChat image can be built from it. See #78 for the change and testing.Second commit (dd89e86) fixes two review findings on top of it:
.in the number format, including dots inside"..."literals and after a backslash escape, so a format liked. mmmm yyyy "kl." hh:mmstill threw and stayed a serial. Quoted runs and escaped characters are now skipped.excelSheetToHtmlreads the workbook on its own path and never ran the date fill, so the file preview showed a serial where the chat text showed a date. The helper now lives inspreadsheetDates.tsas a workbook-level function and is called from bothexcelSheetToTextandexcelSheetToHtml.The fixture gained a quoted-literal format, a backslash-escaped format and a fractional-seconds format, and
html.spec.tscovers the preview path.crud.spec.tsandhtml.spec.tspass (136/136); prettier clean.The repo only allows squash merges, so this lands as one commit on
apro-deploy.馃 Generated with Claude Code