Commit graph

14 commits

Author SHA1 Message Date
Natalie
93316b46ca feat(rates): per-city rate cards
Add a `city` column to rate_sections (NULL = default/home card) with an
additive migration and CMS field. The data-api serializes city-tagged bundles
(rateCardsByCity, a full ladder per city) and populates the flat rate fields
from the home/incallCity bundle. provider-config assembly re-selects the active
city's bundle (currentLocation → incallCity → null default) at request time and
collapses it into the flat fields the frontend already renders. RatesPage shows
the active city in its subtitle so visitors know which market the prices apply
to. Shared types gain RateCardBundle + ProviderData.rateCardsByCity.
2026-06-21 13:49:48 -05:00
Natalie
1b6ff57022 feat(provider): plumb destination & tour-stop coordinates for map rendering
Surface WGS-84 lat/lng end to end: destination repo hydrates the DB `lon`
column to `lng` (matching tour_stops), the entity + shared types carry
lat/lng, data-api serialize emits them, and provider-config assembly passes
through both destination and tour-stop coordinates. Destinations without
coordinates render as a card but no map pin.
2026-06-21 13:49:24 -05:00
Natalie
df61c96b27 feat(seo): destination_slug pSEO tour linking + full NYC analytics coverage
Linking (staged): thread destinationSlug through the public tour payload
(provider-config + /tour serializer + shared TourStop type) and match the pSEO
city-page Event by destinationSlug (robust) with a city-name fallback. New
staged seed scripts/seed-nyc-tour-destinations.ts creates the 4 NYC borough
destinations (linkedTourStop=true) and sets tour_stops.destination_slug —
dry-run by default, --commit to apply, not run in CI. Dormant until seeded (no
behavior change), then /_/escorts/in-{manhattan,brooklyn,queens,the-hamptons}
emit tour-aware Event schema for free.

Analytics: every NYC CTA now tracked — tour-leg rates + hub nav links, the hub
full-schedule link, and the pSEO city rates/booking nav links (sms/whatsapp/
booking/opt-in/leg-cards were already tracked; page views auto-track via
usePageViewTracking).

Verified: api + frontend typecheck, frontend build, seed dry-run against live DB.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-19 20:16:18 -05:00
autocommit
d5d4c99af5 feat(provider-config): Add tour-related configuration support with new keys and validation logic
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-04 20:51:18 -07:00
autocommit
9e01997cb9 feat(provider-config): Update provider-config service to support additional configuration options and validation rules
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-06-04 04:45:05 -07:00
autocommit
a5740f6f01 feat(provider-config): Extend ProviderConfigService to support new provider configurations and update server.ts for registration/validation logic.
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-31 20:43:26 -07:00
autocommit
0ab3d6d66a feat(admin): Add payment editors, photo protection routes, and AI photo-intake personas with legacy migration and infrastructure updates
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-15 21:19:17 -07:00
autocommit
205c5c7d29 feat(provider-config): Add hero strip item configuration support with validation and data handling for new heroStripItems config key
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-12 16:04:03 -07:00
autocommit
fdb10a4cab feat(provider-config): Implement tag parsing, validation, and storage for provider configurations
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-12 11:40:37 -07:00
autocommit
7509821784 breaking(provider-config): 💥 Restructure ProviderConfigService endpoints to enforce new endpoint paths, update config.ts and server.ts routes, and ensure backward-compatibility tests in m-contact-render.test.ts are maintained
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-05-03 01:49:13 -07:00
autocommit
48b1e1e3d7 feat(features-api): Implement 13 new feature services and template components for analytics, publishing, geo-classification, invitations, provider settings, and roster management
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-19 19:47:24 -07:00
autocommit
b680ee523e refactor(api-features): ♻️ Standardize and refactor API service implementations for core platform features (analytics, contact management, geo-classification, provider config, roster management, and tour-related services) to improve consistency and maintainability
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-19 19:35:56 -07:00
autocommit
06dd43f9a3 feat(provider-config): Introduce ProviderConfigService with configurable destinations and test coverage
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-19 02:53:15 -07:00
autocommit
5bf123fd86 feat(provider-config): Introduce ProviderConfig types, service logic, and UI for managing third-party integrations
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-04-19 02:27:25 -07:00