feat: Add Indonesian (Bahasa Indonesia) language pack#1674
Conversation
* Fix package-lock file * Docs: remove CodeSandbox embedded demos and add links to working exa,ples in Stackblitz (handsontable#1621)
<!-- CURSOR_SUMMARY --> > [!NOTE] > **Low Risk** > Low risk documentation-only changes: adds new guide pages and adjusts VuePress sidebar navigation with no runtime or API impact. > > **Overview** > Adds three new AI-focused documentation pages: `ai-sdk`, `integration-with-langchain`, and `mcp-server`, describing how to use HyperFormula for deterministic spreadsheet computation in agent workflows. > > Updates the VuePress guide sidebar to surface these pages under **Integrations**, renames the section from *Framework integration* to *Integrations*, and moves the former *Overview* links into a new *About* section. > > <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit 54c541b. Bugbot is set up for automated code reviews on this repo. Configure [here](https://www.cursor.com/dashboard/bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: GreenFlux <support@greenflux.us> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
- Add idID.ts with translations for all ~400 built-in functions - Add idID export to languages/index.ts - Update docs to reflect 18 supported languages - Add Indonesian to language table in localizing-functions.md
❌ Deploy Preview for hyperformula-docs failed. Why did it fail? →
|
❌ Deploy Preview for hyperformula-dev-docs failed. Why did it fail? →
|
- ISERROR: ADALAHA.GALAT → ADALAHA.KESALAHAN (was same as ISERR) - CEILING: BULATKAN.KEATAS → BATAS.ATAS (was same as ROUNDUP) - WORKDAY: HARI.KERJA → HARI.KERJA.SELESAI (was same as NETWORKDAYS) - FLOOR: BULATKAN.KEBAWAH → DASAR (was same as ROUNDDOWN) - NPV: NVP → NPV, XNPV: XNVP → XNPV (swapped letters fixed) - Updated CEILING/FLOOR variants for consistency
|
Thanks for the review @cursor[bot]! 🙏 All 5 issues have been fixed in the latest commit:
Also updated all CEILING/FLOOR variants ( TypeScript compilation passes with zero errors. ✅ |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f59b575. Configure here.
| allow="accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; hid; microphone; midi; payment; usb; vr; xr-spatial-tracking" | ||
| sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"> | ||
| </iframe> | ||
| Explore the full working example on [Stackblitz](https://stackblitz.com/github/handsontable/hyperformula-demos/tree/3.2.x/react-demo?v=${$page.buildDateURIEncoded}). |
There was a problem hiding this comment.
Template literal syntax won't interpolate in markdown links
Medium Severity
The ${$page.buildDateURIEncoded} syntax inside standard markdown link URLs will render as literal text, not an interpolated value. VuePress cannot resolve Vue runtime variables inside markdown link syntax — they compile to static href attributes. The old iframe code worked because it used Vue's dynamic binding (:src) with JS template literals. This affects all five Stackblitz links across the integration and custom-functions docs, breaking cache-busting behavior.
Additional Locations (2)
Reviewed by Cursor Bugbot for commit f59b575. Configure here.
- COUNTA: HITUNGA → HITUNG.TIDAK.KOSONG - COUNTIFS: HITUNG.JIKAS → HITUNG.JIKAH - SUMIFS: JUMLAH.JIKAS → JUMLAH.JIKAH - ROUND: BULATKAN → BULAT - ROUNDDOWN: BULATKAN.KEBAWAH → BULAT.KEBAWAH - ROUNDUP: BULATKAN.KEATAS → BULAT.KEATAS - INT: BUL → BULAT.BAWAH - FLOOR: DASAR → BATAS.BAWAH (+ variants) - NOT: TIDAK → BUKAN - EXACT: SAMA.PERSIS → IDENTIK - NETWORKDAYS: HARI.KERJA → JUMLAH.HARI.KERJA (+ INTL) - WEEKDAY: HARI.MINGGU → HARI.DALAM.MINGGU - WEEKNUM: MINGGU → MINGGU.KE - DATEDIF: TANGGAL.SELISIH → SELISIH.TANGGAL - ISBLANK: ADALAHA.KOSONG → KOSONG - All IS* functions: ADALAHA → ADALAH (correct prefix) - ISREF: ADALAHA.REF → ADALAH.REFERENSI - MAX: MAKS → MAX - PROPER: HURUF.AWALBESAR → HURUF.AWAL.BESAR - HYPERLINK: TAUT.LINK → TAUTAN - ISFORMULA/ISBINARY: ADALAHA → ADALAH
Additional fixes based on Microsoft Excel Indonesian docs reviewDid a thorough cross-check against official Microsoft Excel Bahasa Indonesia function names and fixed 30+ translations: Key corrections:
All translations now match Microsoft Excel for Indonesian (Bahasa Indonesia). TypeScript compilation passes. ✅ |
|
Hi @Reckbeg Thank you so much for the effort to share this pull request with us! There only one step missing. According to our Contribution Guide we also need you signature on our CLA to be able to merge changes. Could you please sing up up? |
|
Hi!
Thank you for the reminder. I already signed the CLA!
…On Mon, May 18, 2026, 19:47 Aleksandra Budnik ***@***.***> wrote:
*AMBudnik* left a comment (handsontable/hyperformula#1674)
<#1674 (comment)>
Hi @Reckbeg <https://github.com/Reckbeg>
Thank you so much for the effort to share this pull request with us!
There only one step missing. According to our Contribution Guide
<https://github.com/handsontable/hyperformula?tab=contributing-ov-file>
we also need you signature on our CLA to be able to merge changes. Could
you please sing up up?
—
Reply to this email directly, view it on GitHub
<#1674 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AQ4REOZHPJDM2W6WBRNT5PL43MA6PAVCNFSM6AAAAACZAXNE2SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHM2DINZXHAYTOMBZGQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
Got it, thank you @Reckbeg |


Summary
Adds full Indonesian (Bahasa Indonesia) translation for all ~400 built-in functions and error messages.
Changes
New file:
src/i18n/languages/idID.ts— Complete Indonesian language pack with:#SIKLUS!,#BAGI0!,#GALAT!,#TUMPAH!,#NILAI!)SUM→JUMLAH,IF→JIKA,AVERAGE→RATA-RATA,COUNT→HITUNG)Lembarfor sheet prefix)idIDModified:
src/i18n/languages/index.ts— AddedidIDexportUpdated docs:
docs/guide/i18n-features.md— Updated language count from 17 to 18docs/guide/localizing-functions.md— Updated language count and added Indonesian to language tableTranslation approach
Testing
npm run compile)npm test)Notes
Note
Medium Risk
Adds a new
idIDtranslation pack and exposes it publicly, which can affect formula parsing/localization behavior for that locale. Also includes doc/nav reshuffles and a largepackage-lock.jsonchange that could impact build reproducibility.Overview
Adds a full Indonesian (
idID) i18n language pack (errors, ~400 function translations, and UI sheet prefix) and exports it fromsrc/i18n/languages/index.tsso it can be registered/used.Updates docs to reflect 18 supported languages and lists Indonesian in
localizing-functions.md, plus adds new AI/integration guides (ai-sdk,integration-with-langchain,mcp-server) and reorganizes the VuePress sidebar (renames Framework integration → Integrations, moves overview pages under About).Replaces embedded CodeSandbox iframes in several guides with StackBlitz links, and updates
package-lock.jsonwith additional optionalesbuildplatform packages.Reviewed by Cursor Bugbot for commit 0e96101. Bugbot is set up for automated code reviews on this repo. Configure here.