Skip to content

feat: add peekProBookingDeepLink to booking model - #17

Merged
oskarbruening merged 2 commits into
mainfrom
feat/booking-peek-pro-deep-link
Jul 14, 2026
Merged

feat: add peekProBookingDeepLink to booking model#17
oskarbruening merged 2 commits into
mainfrom
feat/booking-peek-pro-deep-link

Conversation

@oskarbruening

Copy link
Copy Markdown
Collaborator

What

Adds a new field peekProBookingDeepLink to the public Booking model exposed to package consumers.

The link is derived from the booking's order id and booking id and takes the form:

http://pro-app.peek.com/-/order%2F<orderid>%3FsaleId=<bookingid>

Both ids are normalized to the gateway's lowercase, _-separated form (reusing the existing normalizeBookingId helper). The link is "" when either id is absent, so a malformed URL is never emitted.

Changes

  • src/models/booking.ts — added peekProBookingDeepLink: string to the Booking interface with docs.
  • src/internal/bookings/booking-converter.ts — new pure buildPeekProBookingDeepLink helper, populated in fromBookingNode.
  • test/bookings/booking-converter.test.ts — assertions for the populated link, the empty-node default (""), and id normalization.

Verification

  • tsc --noEmit clean
  • 633 tests pass; coverage 99.85% lines / 97.12% branches / 100% functions (above the 95% gate)
  • eslint clean

🤖 Generated with Claude Code

oskarbruening and others added 2 commits July 14, 2026 15:11
Derive a Peek Pro app deep link from the order id and booking id and
expose it on the public Booking model. Both ids are normalized
(lowercased, `-` → `_`) via the existing normalizeBookingId helper; the
link is empty when either id is absent.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@oskarbruening
oskarbruening merged commit ddd4885 into main Jul 14, 2026
2 checks passed
@oskarbruening
oskarbruening deleted the feat/booking-peek-pro-deep-link branch July 14, 2026 19:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant