Commit Graph

227 Commits

Author SHA1 Message Date
ghost2023
4b3e8ad32c feat(landing): add front door routing to passenger and freight
edrsc.com had no entry point — a visitor could not tell which of the two
apps they wanted. This adds @edr/landing: one static page whose job is to
make that choice obvious, with the two doors above the fold and the rest
kept to supporting context.

Fills in apps/edr-landing/, which until now held an orphaned next-env.d.ts
from an abandoned Next 15 start and was built by nothing.

- Next.js 14 static export. Versions mirror the passenger portal exactly,
  so they resolve to what the lockfile already had and add 6 packages.
  Depends on no workspace package — @edr/ui-common's Tailwind 4 tokens do
  not fit this Tailwind 3 setup.
- Destinations come from NEXT_PUBLIC_PASSENGER_URL / NEXT_PUBLIC_FREIGHT_URL
  as origins, with the entry path appended in src/lib/apps.ts. Freight links
  to /portal rather than /, which is that app's own marketing landing.
- Design lifted from EDRFreightLandingPage so the two public surfaces read
  as one railway. Figures (752 km, ~16 h) are the ones freight already
  asserts publicly.
- Fonts load as a stylesheet, not next/font: next/font fetches from
  fonts.googleapis.com during `next build` and failed the build outright on
  a machine without network. Verified deterministic over repeated builds.
- CountUp renders its final value server-side and the reveal animation's
  hidden state is scoped behind html.js, so the page is complete with
  JavaScript off instead of blank.

turbo.json: a static export's artifact is out/, which the build task did not
list — a cache hit would have restored a build with the artifact missing.
Also gitignored.

Dockerfile.web: passes the two NEXT_PUBLIC_* build args through (a static
export inlines them at build time, so runtime env does nothing), and exempts
this app from the VITE_* required-check that guards the freight Vite apps and
would otherwise fail its build.

Claude-Session: https://claude.ai/code/session_011ZMMHwK4Ham1Dt19FVZQj3
2026-09-04 20:32:53 +03:00
marshal
abf856547a Merge pull request #1453 from Tria-plc/freight_feature/usermanagement
Freight feature/usermanagement
2026-08-29 10:40:53 +03:00
Marshal
7e163088d9 fix issue, add transit flow, fix cancellation 2026-08-28 22:13:49 +00:00
Roba Boru
1603ff8211 Update group booking and package 2026-08-27 22:54:59 +03:00
Abubeker Yasin
e174efb8e0 fix: ( passenger ) read permissions from position types and all positions 2026-08-20 12:33:39 +03:00
Nathnael
b7583df426 feat(freight-api): replace canned reports with a generic report engine
Nuke the 17 hand-written raw-SQL reports (no pagination, hard LIMITs) and
the reports module built around them. Replace with a resolver contract:
a report declares columns/filters/permission and a TypeORM QueryBuilder;
ReportRunnerService applies filtering, a whitelisted sort, offset/limit
paging, and a COUNT(*) FROM (query) wrapper for the total (getCount() is
wrong for GROUP BY). ReportExportService re-runs the same resolver
unpaginated for xlsx (exceljs) and pdf (existing PdfRenderService, now
landscape-capable) exports.

Ships with 4 reports: bookings-list, revenue-by-customer,
aging-receivables, contract-utilization. Catalog + per-report permission
checks live in the controller; adding a report is one new definitions/
file plus a REPORT_KEYS entry, no frontend change.
2026-08-13 07:52:20 +00:00
Hagernesh
2d4da8110b eims integration master test complete 2026-08-12 14:12:23 +00:00
Marshal
357aae7d82 fix issue 2026-08-12 09:08:08 +00:00
Marshal
08bd110e5b changes 2026-08-12 08:56:47 +00:00
Marshal
61f261b8f0 fix issues 2026-08-12 08:42:42 +00:00
Marshal
325cbbc882 fix issue 2026-08-12 08:40:02 +00:00
Roba Boru
5249441422 Merge branch 'dev' of https://github.com/Tria-plc/edr-platform into feature/report 2026-08-12 11:27:05 +03:00
Roba Boru
bdcdb4f047 Added financial report 2026-08-12 11:24:12 +03:00
Nathnael
85bdaa4afb Merge branch 'dev' into freight/nati-2 2026-08-12 08:03:10 +00:00
marshal
e2c4894154 Merge pull request #1249 from Tria-plc/freight_feature/usermanagement
fix issue
2026-08-12 10:57:50 +03:00
Marshal
86979afccd fix issue 2026-08-12 07:57:20 +00:00
marshal
e5cbf74a10 Merge pull request #1247 from Tria-plc/freight_feature/usermanagement
fix issue
2026-08-12 10:34:04 +03:00
Marshal
4098d25ca1 fix issue 2026-08-12 07:33:13 +00:00
ghost2023
4bf1aa8053 chore: deps 2026-08-12 10:28:56 +03:00
Marshal
4b8fea2d76 chore: update package overrides in pnpm-workspace.yaml for dependencies 2026-08-12 07:17:13 +00:00
marshalyordanos
35e5404b41 Refactor code structure for improved readability and maintainability 2026-08-11 19:36:00 +03:00
Nathnael
41e8c08ba3 feat: WIP Contnet managemtn 2026-08-08 09:37:28 +00:00
Nathnael
d5622ed360 chore: install auditlog pkg 2026-08-05 13:39:45 +00:00
Abubeker Yasin
19ab3af1cb chore: ( iam ) update iam package 2026-08-04 10:56:47 +03:00
Abubeker Yasin
85d5faed34 chore: ( iam ) update iam package 2026-08-04 10:27:59 +03:00
Nathnael Wondisha
229fc8e2db Merge pull request #1094 from Tria-plc/fixes
Fixes
2026-08-03 15:01:08 +03:00
Nathnael
f103b51de5 feat: integration tests 2026-08-03 10:51:43 +00:00
Marshal
94c64c2390 configer the stamp 2026-08-02 21:09:37 +00:00
Marshal
21fdf144ca Add a minimal payment mock server for end-to-end testing 2026-08-01 18:59:14 +00:00
ghost2023
08df953a35 fix: pnpm lock 2026-08-01 14:22:14 +03:00
ghost2023
eae0552aae Merge branch 'staging' into freight/fix/pay 2026-08-01 14:21:28 +03:00
Nathnael Wondisha
7ad1b4dff2 Merge branch 'staging' into dev 2026-08-01 14:06:37 +03:00
Nathnael
784f6ac6f2 Merge branch 'dev' into update-freight-migrations 2026-08-01 10:59:41 +00:00
Nathnael
dfdb79301d chore(freight-api): upgrade api-common and iamapi-common packages 2026-08-01 10:50:40 +00:00
ghost2023
42e227569b Merge remote-tracking branch 'origin/staging' into freight/fix/pay
# Conflicts:
#	apps/edr-freight-api/src/modules/billing/billing.service.ts
#	apps/edr-freight-web/portal/src/pages/billing/InvoiceDetailPage.tsx
#	apps/edr-freight-web/portal/src/pages/bookings/BookingDetailPage/components/PaymentMethodModal.tsx
#	pnpm-lock.yaml
2026-08-01 13:09:14 +03:00
marshal
91f3f56e12 Merge pull request #1063 from Tria-plc/freight_feature/usermanagement
Freight feature/usermanagement
2026-08-01 13:04:33 +03:00
Marshal
3424dacd5f fix issue 2026-08-01 10:03:56 +00:00
Nathnael Wondisha
616269a988 Merge branch 'staging' into dev-to-staging 2026-08-01 10:27:47 +03:00
marshal
2605184b74 Merge pull request #1050 from Tria-plc/freight_feature/usermanagement
fix issue
2026-07-31 16:29:19 +03:00
Marshal
b74b51dcc1 fix issue 2026-07-31 13:27:44 +00:00
marshal
be75a9e867 Merge pull request #1048 from Tria-plc/freight_feature/usermanagement
fix issue
2026-07-31 16:06:43 +03:00
Marshal
66062ac1a2 fix issue 2026-07-31 13:05:04 +00:00
Abubeker
37855b0a83 feat: ( payment ) implement cbe payment 2026-07-31 07:50:10 +00:00
Nathnael
eefbc7b111 chore: update the iamapi package to 0.7.15 2026-07-30 13:22:20 +00:00
Nathnael
03b8ca0ce7 refactor: centralized the iam seeder 2026-07-27 08:42:27 +00:00
Muluhabt
87ebec8b51 Merge remote-tracking branch 'origin/dev' into tests 2026-07-22 16:33:07 +03:00
Nathnael
b8b8c4adf7 feat(e2e): add freight e2e docker-compose stack with isolated services 2026-07-21 11:00:02 +00:00
Muluhabt
f2ae9c883f Adding all the tests and fixes to the passengers app 2026-07-21 13:45:49 +03:00
Muluhabt
810aba563f Merge remote-tracking branch 'origin/dev' into tests 2026-07-20 16:34:59 +03:00
Muluhabt
c4f54a666b test: add EDR passenger pricing/config E2E bug-hunt harness
Hermetic E2E harness targeting pricing integrity and backoffice config:
- e2e/ docker Postgres (5544) + prepare.sh/run.sh one-command runner + HTML report
- 6 suites / 23 tests reproducing pricing, FX, wallet, refund, config and auth
  defects (see docs/ISSUES.md); docs/e2e-test-matrix.md documents the matrix
- two-tier harness (slim module boot + direct service instantiation) to work
  around the IAM/RabbitMQ/file-type boot wall
- .env.test.example tracked; loader falls back to it for fresh checkouts

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-20 16:22:40 +03:00