Commit Graph
45 Commits
Author SHA1 Message Date
tiennm99 ea2f3dafcc refactor: parallel fetching, simplified page, consistent dates, cleanup
- Fetch dates in parallel chunks of 5 instead of sequentially
- Simplify page.js to server component, move default dates into viewer
- Replace showTable with hasFetched for clearer semantics
- Normalize date display to yyyy-MM-dd for both banks
- Remove unused Geist_Mono font import (~50KB savings)
- Change lang to "vi" for Vietnamese bank data context
- Clean up empty blocks and redundant variables in API route
2026-04-03 23:14:40 +07:00
tiennm99 339d779540 ci: add Claude Code project configuration 2026-04-03 23:03:43 +07:00
tiennm99 41dd014b75 feat: improve UI/UX with dark mode, better visual hierarchy, and accessibility
- Add card layout, loading spinner, error/empty states for better UX
- Full dark mode support for date picker, tables, and inputs via CSS vars
- Extract reusable RateTable component, remove duplicate table markup
- Fix CSV injection vulnerability with escapeCsv sanitizer
- Fix URL.createObjectURL memory leak
- Replace JS hover handlers with CSS hover for better performance
- Add aria-live region for screen reader announcements
- Fix metadata from default "Create Next App" to proper title
- Differentiate table stripe/hover colors in light mode
2026-04-03 23:02:53 +07:00
Tien Nguyen Minh edb3a2096f Merge pull request #17 from tiennm99/dependabot/npm_and_yarn/tar-7.5.11
build(deps-dev): bump tar from 7.4.3 to 7.5.11
2026-03-13 14:58:48 +07:00
dependabot[bot] 179afe7a53 build(deps-dev): bump tar from 7.4.3 to 7.5.11
Bumps [tar](https://github.com/isaacs/node-tar) from 7.4.3 to 7.5.11.
- [Release notes](https://github.com/isaacs/node-tar/releases)
- [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-tar/compare/v7.4.3...v7.5.11)

---
updated-dependencies:
- dependency-name: tar
  dependency-version: 7.5.11
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-11 11:40:53 +00:00
Tien Nguyen Minh 32a502b784 Merge pull request #11 from tiennm99/dependabot/npm_and_yarn/next-16.1.5
build(deps): bump next from 15.5.9 to 16.1.5
2026-03-11 18:39:51 +07:00
dependabot[bot] 3e002c5dcb build(deps): bump next from 15.5.9 to 16.1.5
Bumps [next](https://github.com/vercel/next.js) from 15.5.9 to 16.1.5.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.5.9...v16.1.5)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 16.1.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-28 19:36:19 +00:00
Tien Nguyen Minh 0c77a6c2b3 Merge pull request #5 from tiennm99/dependabot/npm_and_yarn/js-yaml-4.1.1
build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1
2026-01-09 10:17:12 +07:00
dependabot[bot] 4c90828a5b build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-16 13:33:47 +00:00
Tien Nguyen Minh 3c57cf2d18 Merge pull request #4 from tiennm99/dependabot/npm_and_yarn/axios-1.12.0
build(deps): bump axios from 1.10.0 to 1.12.0
2026-01-09 10:17:01 +07:00
dependabot[bot] 8e26115b48 build(deps): bump axios from 1.10.0 to 1.12.0
Bumps [axios](https://github.com/axios/axios) from 1.10.0 to 1.12.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.10.0...v1.12.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.12.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-13 15:48:48 +00:00
Tien Nguyen Minh 3e2e470f0a Merge pull request #1 from tiennm99/dependabot/npm_and_yarn/form-data-4.0.4
build(deps): bump form-data from 4.0.3 to 4.0.4
2026-01-09 10:16:49 +07:00
dependabot[bot] cc4aefd6c5 build(deps): bump form-data from 4.0.3 to 4.0.4
Bumps [form-data](https://github.com/form-data/form-data) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/form-data/form-data/releases)
- [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md)
- [Commits](https://github.com/form-data/form-data/compare/v4.0.3...v4.0.4)

---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-22 13:15:42 +00:00
Tien Nguyen Minh 72bca6cc92 Merge pull request #7 from tiennm99/dependabot/npm_and_yarn/next-15.5.9
build(deps): bump next from 15.3.4 to 15.5.9
2026-01-09 10:15:44 +07:00
dependabot[bot] fad17db1b7 build(deps): bump next from 15.3.4 to 15.5.9
Bumps [next](https://github.com/vercel/next.js) from 15.3.4 to 15.5.9.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.3.4...v15.5.9)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 15.5.9
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-12 05:14:12 +00:00
tiennm99 6a572e36aa feat: remove debug log 2025-07-08 13:07:00 +07:00
tiennm99 08402cbcf4 feat: handle for missing data days 2025-07-08 12:35:05 +07:00
tiennm99 bf9bd07ad2 fix: a day off on input 2025-07-08 12:27:34 +07:00
tiennm99 3915f6231e feat: update view 2025-06-27 22:48:24 +07:00
tiennm99 41287a9981 feat: add speed insights 2025-06-27 22:37:10 +07:00
tiennm99 69ffffb509 feat: add analytics 2025-06-27 22:30:24 +07:00
tiennm99 f41514c068 feat: update README 2025-06-27 22:17:34 +07:00
tiennm99 02d2e71fdf feat: tuning views 2025-06-27 22:15:10 +07:00
tiennm99 9e08d285d9 feat: refactor 2025-06-27 22:07:15 +07:00
tiennm99 1ec1dde0f5 feat: date picker 2025-06-27 21:55:43 +07:00
tiennm99 c3f2d7e60e feat(nextjs): migrate old logic 2025-06-27 21:44:44 +07:00
tiennm99 5e2aa76e29 feat: reinit nextjs 2025-06-27 12:20:40 +07:00
tiennm99 8a8ccb5109 feat: update css 2025-06-26 20:34:50 +07:00
tiennm99 68eb284362 feat(nextjs): migrate from raw html to nextjs 2025-06-26 20:24:06 +07:00
tiennm99 8d7eff85e3 feat: init next.js 2025-06-26 20:09:37 +07:00
tiennm99 aa3635450c feat(tcb): add tcb (WIP) 2025-06-26 18:21:57 +07:00
tiennm99 b71a09aba3 feat: init
Introduces a new index.html file providing a web interface to fetch and export USD exchange rates from BIDV for a selected date range. The README is updated with feature descriptions and relevant API endpoints.
2025-06-26 12:28:29 +07:00
Tien Nguyen Minh c39f768d1c Initial commit 2025-06-26 12:12:32 +07:00
tiennm99 cba0d5793b Clear and rewrite
The v0.dev prototype history above is superseded by the maintained
exchange-rate-export implementation replayed after this commit.
2026-08-07 12:59:55 +07:00
tiennm99 b74c97c74f chore: clear all Dependabot advisories and add CI (#16)
* build(deps): remove unused frameworks and clear all advisories

The v0 scaffold declared @remix-run/react, @sveltejs/kit, svelte, vue and
vue-router, none of which are imported anywhere in the app. Removing them
drops react-router, react-router-dom, turbo-stream, cookie, vite and their
trees, clearing 13 advisories outright.

Replace xlsx with write-excel-file. The npm release of xlsx is abandoned at
0.18.5, so its prototype pollution and ReDoS advisories have no registry fix,
and SheetJS only ships newer builds from its own CDN as a tarball with no
integrity hash, which pnpm rejects. write-excel-file is maintained, carries no
advisories, and pulls in only fflate. The export writes the same eight columns
in the same order to a sheet named "Exchange Rates", with every value still
written as a string. It also cuts the route's first-load JS from 264 kB to
163 kB.

Add pnpm overrides forcing the lowest release that closes every advisory
affecting the previously resolved version of each remaining transitive dep.
postcss is pinned exactly because pnpm's minimumReleaseAge policy rejects
releases younger than 24h during CI installs.

* ci: add typecheck and build workflow

The repository had no workflows. Type errors are skipped during builds via
next.config.mjs, so check them here where a regression fails the run.
Installs use --frozen-lockfile so dependency overrides cannot silently stop
applying.
2026-07-25 21:18:14 +07:00
dependabot[bot] 5583743cc3 build(deps): Bump next from 15.5.18 to 15.5.21 (#15)
Bumps [next](https://github.com/vercel/next.js) from 15.5.18 to 15.5.21.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Commits](https://github.com/vercel/next.js/compare/v15.5.18...v15.5.21)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 15.5.21
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-25 16:22:30 +07:00
dependabot[bot] 3ec0fa0365 build(deps-dev): Bump postcss from 8.5.10 to 8.5.18 (#13)
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.10 to 8.5.18.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.10...8.5.18)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.18
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-25 16:19:23 +07:00
dependabot[bot] e405b3dc26 Bump postcss from 8.5.0 to 8.5.10 (#12)
Bumps [postcss](https://github.com/postcss/postcss) from 8.5.0 to 8.5.10.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.5.0...8.5.10)

---
updated-dependencies:
- dependency-name: postcss
  dependency-version: 8.5.10
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-23 19:28:52 +07:00
dependabot[bot] 6a292b96c4 Bump next from 15.2.8 to 15.5.18 (#10)
Bumps [next](https://github.com/vercel/next.js) from 15.2.8 to 15.5.18.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v15.2.8...v15.5.18)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 15.5.18
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-23 19:25:45 +07:00
dependabot[bot] 9aa86673fe Bump svelte from 5.46.1 to 5.55.9 (#9)
Bumps [svelte](https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte) from 5.46.1 to 5.55.9.
- [Release notes](https://github.com/sveltejs/svelte/releases)
- [Changelog](https://github.com/sveltejs/svelte/blob/main/packages/svelte/CHANGELOG.md)
- [Commits](https://github.com/sveltejs/svelte/commits/svelte@5.55.9/packages/svelte)

---
updated-dependencies:
- dependency-name: svelte
  dependency-version: 5.55.9
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-23 19:22:59 +07:00
vercel[bot]andVercel f12389db32 Fix React Server Components CVE vulnerabilities
Updated dependencies to fix Next.js and React CVE vulnerabilities.

The fix-react2shell-next tool automatically updated the following packages to their secure versions:
- next
- react-server-dom-webpack
- react-server-dom-parcel  
- react-server-dom-turbopack

All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory.

Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
2026-05-23 19:13:01 +07:00
v0andTien Nguyen Minh 9d14c7b525 fix: resolve deployment error with useSearchParams
Wrap layout content in <Suspense> to meet Next.js requirements

Co-authored-by: Tien Nguyen Minh <39063457+tiennm99@users.noreply.github.com>
2025-06-28 17:02:39 +00:00
v0andTien Nguyen Minh aef87492bf feat: add default date ranges and validation for exchange rate export
Provide sensible default date range and add validation for date inputs.

Co-authored-by: Tien Nguyen Minh <39063457+tiennm99@users.noreply.github.com>
2025-06-28 16:54:08 +00:00
v0andTien Nguyen Minh 0b2b377f7c refactor: convert project from TypeScript to JavaScript
Remove type annotations and convert file extensions to JavaScript

Co-authored-by: Tien Nguyen Minh <39063457+tiennm99@users.noreply.github.com>
2025-06-28 16:50:48 +00:00
v0andTien Nguyen Minh ae81b48668 Initialized repository for project exchange-rate-export
Co-authored-by: Tien Nguyen Minh <39063457+tiennm99@users.noreply.github.com>
2025-06-28 16:46:55 +00:00