Μετάβαση στο περιεχόμενο

Changelog

Version 20.26.0

  • chore: :arrow_up: upgraded Angular to latest version
  • chore: :arrow_up: upgraded some 3rd party deps
  • chore: :recycle: renamed EngineClient to CustomizationClient everywhere
  • chore: :triangular_flag_on_post: added a payout feature flag
  • chore: :wrench: enabled payouts in staging
  • chore: consolidate bootstrap libraries and refactor domain consumers
  • chore: ignore .claude/scheduled_tasks.lock runtime artifact
  • chore(booking-engine): drop unused @wink/property-inventory/domain dependency from flow lib
  • chore(claude): guard against wink:label misuse and duplicated wink: prefix
  • docs: :globe_with_meridians: creating translations
  • docs: :globe_with_meridians: update translations across all apps
  • docs: :memo: added missing i18n keys
  • docs: :memo: added missing i18n keys for GRI and BED
  • docs: :memo: removed comment
  • docs: :memo: translation complete
  • docs: :memo: updated keys and layout in WinkLinks
  • docs: :memo: updated translations
  • docs: add ngx-date-fns skill
  • docs: generated changelog and updated version files
  • feat: add code-viewer and agent sidebar libs, rename travel-agent route lib
  • feat: capture optional recipient address on bank-account form (#606)
  • feat: design changes (#447)
  • feat: display git commit hash in footer for staging build identification
  • feat: improve modal UX, add missing i18n keys, and fix affiliate publisher service rename
  • feat: show ledger balance as withdrawable funds in funds-transfer (#604)
  • feat: support room-stay quantity>1 and multi-room-type carts in the IBE (#611)
  • feat(access): add ACL section/scope model, page-level gating, and button authorization (#621)
  • feat(admin): add property decorator/status, fix breadcrumbs, redesign checklist
  • feat(admin): add refund requests section with approve/modify/reject
  • feat(administration): add external portal link to account and property decorators
  • feat(api-docs): migrate from Bootstrap 5 to Tailwind CSS v4 + daisyUI
  • feat(application): create-only client type, split create/update payloads, scopes on card
  • feat(booking): add Google Calendar link and restyle public booking details
  • feat(booking): admin refund flow with async settlement tracking and currency fixes (#642)
  • feat(booking): unify cancellation rule and add refund-preview cancel modals (#645)
  • feat(corporate): add dark mode support with consistent branding (#525)
  • feat(corporate): migrate corporate app to Tailwind CSS v4 with new header and homepage (#524)
  • feat(dynamic-seller-list): render saved searches as a code-block DSL
  • feat(extranet): overhaul booking details page UI and domain types
  • feat(google-tag-manager): revamp GA4 enhanced ecommerce item tracking (#522)
  • feat(green-index): differentiate intro page for first-time vs returning users
  • feat(lead): add bulk status update to lead grid with NgRx wiring and filter row polish
  • feat(managing-entity): add bulk status update to admin grid with back-end endpoint and tests
  • feat(managing-entity): add edit-access UI for existing managers
  • feat(payment-admin): add aggregate data service, leaderboard entities, and dashboard redesign
  • feat(payment-admin): redesign dashboard with httpResource, funds flow, and leaderboards
  • feat(payment-admin): redesign refund modal with pinned header/footer and live calculator
  • feat(payment-portal): add payout withdrawal system with fee estimation and history (#581)
  • feat(payment): disable stripe advanced fraud signals on staging for e2e
  • feat(portal): add hotel/creator toggle to portal landing page
  • feat(portal): add missing social-list design i18n keys
  • feat(property): add bulk status update to admin grid with NgRx wiring
  • feat(property): popularity index pipe and card data unification
  • feat(rate-verifier): add room quantity selector to test booking modal
  • feat(social-list): redesign link manager and social insights UI
  • feat(special-rate-bundle): add localized descriptions to bundled promotions (#573)
  • feat(static-seller-list): redesign curated list cards with daisyUI shell
  • feat(tailwind): complete Bootstrap to Tailwind CSS + daisyUI migration
  • feat(user): add bulk enable/disable to user grid with NgRx wiring
  • feat(user): add enabled/disabled filter to user grid status column
  • feat(wizard): gate extranet behind property-setup wizard and rebuild onboarding flow
  • fix: :bug: fix an issue when wizard loading for non hotel
  • fix: :bug: fixed OTA landing page missing itinerary picker
  • fix: :bug: fixed partnerships section
  • fix: :bug: fixed redirect url to booking details
  • fix: :bug: IBE now runs again using cid
  • fix: :chore: fixed paths
  • fix: :green_heart: correct ng-package.json dest paths for renamed route libraries
  • fix: :green_heart: fix build paths and lint errors after directory renames
  • fix: :green_heart: update angular 21.2.11→21.2.12 and sentry 10.51.0→10.52.0 in library peer deps
  • fix: :green_heart: update peer dependencies to fix lint errors across 53 libraries
  • fix: :recycle: fixed GA$ select
  • fix: :recycle: fixed incorrect sidebar link to activities
  • fix: :recycle: improved forwarding to new account you manage
  • fix: :rotating_light: fix lint errors and failing tests across 7 libraries
  • fix: :rotating_light: fixed all lint errors
  • fix: :rotating_light: fixed compilation errors
  • fix: :rotating_light: fixed tests and lint errors
  • fix: :white_check_mark: update tests for GA4 context interface after enhanced ecommerce revamp
  • fix: :wrench: fixed customization client failures
  • fix: :wrench: fixed report generation missing numbers
  • fix: :wrench: removed apps in versions document
  • fix: :zap: remove old signal
  • fix: add missing peerDependencies to resolve dependency-checks lint errors
  • fix: add missing whenPropertySelected$ effect to WizardEffects
  • fix: added activities on hotel addons (#651)
  • fix: addons changes (#654)
  • fix: address sentry follow-ups from pr #559
  • fix: booking engine design issues (#643)
  • fix: booking engine improvement (#636)
  • fix: booking engine minor changes and fixes (#570)
  • fix: booking engine minor issue fixes (#634)
  • fix: booking engine stuff (#628)
  • fix: booking engine suggested changes and discount chnages on payment (#571)
  • fix: bridge form valueChanges to signals so breadcrumb labels react to typing
  • fix: build error fix (#619)
  • fix: cart issue (#566)
  • fix: checkout page changes (#556)
  • fix: correct booking/ui-breakdown lib tags and shore up tests
  • fix: correct peerDependencies in payment-portal and shortened-url packages
  • fix: dark mode and mobile design (#547)
  • fix: date picker issue and hotel adons change (#582)
  • fix: design changes (#599)
  • fix: design changes sugested by yann (#584)
  • fix: design fixes
  • fix: design issue and currency conversion (#542)
  • fix: eliminate white footer in social-list sign-up page
  • fix: ensure all lint and tests pass for uncommitted files
  • fix: hotel adons change (#583)
  • fix: improve checkbox spacing and modal layout in test booking form
  • fix: infromation login flow fix (#536)
  • fix: merge hotel addons and room addons (#650)
  • fix: migrate 15 projects to new GA4ItemContextInterface API (#528)
  • fix: minor issue fixes (#552)
  • fix: multiroom booking and profile page
  • fix: multiroom booking issues changes (#622)
  • fix: ng05104 issue for booking engine (#624)
  • fix: payment failure
  • fix: payment flow (#641)
  • fix: payment issue (#544)
  • fix: pipe changes (#545)
  • fix: pipe changes and rooms left functionality improvement (#550)
  • fix: profile api changes and payment modal design changes (#612)
  • fix: rate plan design issue (#564)
  • fix: refactor payment modal (#618)
  • fix: refactor room type component (#613)
  • fix: replace invalid dark:text-white-secondary class with valid dark variant
  • fix: reservation dates for hotel adons (#630)
  • fix: resolve lint errors and test failures across 13 projects
  • fix: resolve lint errors and test failures across 30 projects
  • fix: resolve lint errors and test failures in multi-project changes
  • fix: resolve test failures across 10 projects after footer and payment-portal refactors
  • fix: restyle grid filter rows and align dark base surfaces
  • fix: room card design (#563)
  • fix: room componenet size (#605)
  • fix: route issue for OTA (#598)
  • fix: set globalThis.Prism before loading prism-markup plugin
  • fix: test cases and side menu profile issue (#533)
  • fix: update booking-status tests and peerDependencies for new TEST_PAYMENT_SUCCEEDED enum value
  • fix: wink-3rd-party-gtm duplicate tag (#568)
  • fix: yann suggested design changes (#539)
  • fix(a11y): add accessible names to form controls and lift create-wizard contrast
  • fix(a11y): darken booking-engine header avatar initials palette for AA contrast
  • fix(a11y): raise color contrast on tabs, pricing badge and avatar initials
  • fix(a11y): resolve blocking axe violations in portal shell
  • fix(admin): restore missing DASHBOARD and CHART i18n keys from payment-admin
  • fix(admin): restore REVOLUT i18n keys removed in PR #561
  • fix(analytics): use consistent card background on gradient stacked area charts
  • fix(application): copy secret in modal and keep scopes after update
  • fix(auth): only arm automatic silent refresh when a refresh token exists
  • fix(booking-engine,customization): repair corrupted specs and decouple scheduler modal
  • fix(booking-engine): remove redundant optional chaining on add-on quantities signal
  • fix(booking-engine): update transactional menu tests to use i18n translations
  • fix(booking-grid): guard missing property/state instead of throwing (#648)
  • fix(booking): after-refund breakdown shows original sell rate + amount refunded
  • fix(booking): clean up request-refund-modal daisyUI layout
  • fix(booking): NgRx feature-key collision + null-safe booking selectors (#646)
  • fix(booking): reflect room quantity in booking details line items
  • fix(booking): show amount paid in receipt header after full refund
  • fix(booking): use form-field-layout for cancellation reason modal spacing
  • fix(campaigns): restore Tailwind/daisyUI generation in build styles
  • fix(e2e-utils): remove dangling eslint-disable for unconfigured playwright rule
  • fix(extranet): redesign booking engine page with dark mode and guided UX (#580)
  • fix(extranet): select property when managing entity changes (#577)
  • fix(extranet): statically type booking row template in hotel-booking-grid
  • fix(i18n): add ATTRACTION.NAME_PLACEHOLDER key for attraction form breadcrumb
  • fix(inventory): missing i18n keys and latest-inventory header style
  • fix(lead): make lead form address hints dark-mode friendly
  • fix(lint): sync library peerDependencies and fix regex-spaces
  • fix(managed-social): resolve lint errors in calendar post modal spec
  • fix(portal): correct i18n keys, routes, and icons in sidebar sections (#579)
  • fix(portal): gate extranet/social/agent routes by managing-entity type
  • fix(portal): ui polish for dropdowns, buttons, sidebar, and rate verifier (#578)
  • fix(portals): link contact to /contact page instead of mailto
  • fix(publisher): null-safe NgRx publisher selectors (#647)
  • fix(rate-tester): null-safe room result arrays at the store entry point (#649)
  • fix(rate-verifier): use number input for test booking quantity
  • fix(rate): add dark mode support to rate calendar grid (#576)
  • fix(seller-url): stack url form fields full-width instead of cramped grid columns
  • fix(shared): consolidate prismjs bootstrap into @wink/shared/util-prism
  • fix(shopping-cart): omit dates on non-appointment ancillaries
  • fix(shopping-cart): prevent duplicate carts when adding a second room type
  • fix(shortened-url): add missing portal i18n keys for link shortener
  • fix(shortened-url): brighten action-button text and drop dead variant classes
  • fix(social-list): brighten FAQ text in dark mode
  • fix(special-rate-bundle): persist bundles created without override (#574) (#575)
  • fix(studio): browse drawer rendering, sort dropdown, i18n gaps
  • fix(styles): alias daisyUI error/neutral color scales to wink danger/muted
  • fix(tailwind): collapse duplicated wink: prefix in template classes
  • fix(tests): align specs and peerDeps with recent booking/admin/payment refactors
  • fix(tests): fix spec failures from httpResource migration and sidebar refactors
  • fix(travel-agent): correct route-authenticated ng-package dest after rename
  • perf: :fire: removed unused decorator
  • perf: reduce initial bundle size for administration and extranet apps (#561)
  • perf(sentry): lazy-load replay/feedback via cdn to shrink initial bundle
  • refactor: :art: no changes
  • refactor: :chart_with_upwards_trend: migrating analytics to new domain model
  • refactor: :chart_with_upwards_trend: migrating GA4 analytics
  • refactor: :chart_with_upwards_trend: migrating ga4 checkout
  • refactor: :fire: remove hotel location
  • refactor: :fire: removed mocks from package.json
  • refactor: :memo: added missing i18n keys
  • refactor: :recycle: added a ancillary type filter on dates
  • refactor: :recycle: added beneficiary breakdown in booking itself
  • refactor: :recycle: added group data on thank you component
  • refactor: :recycle: added logo and icon to brand section
  • refactor: :recycle: added managingEntityIdentifier to application and webhook
  • refactor: :recycle: added MCP scope in application form
  • refactor: :recycle: added mode = creator to portal url
  • refactor: :recycle: added Revolut payments
  • refactor: :recycle: compiles and runs again
  • refactor: :recycle: consolidated create / update routes
  • refactor: :recycle: everything compiles again
  • refactor: :recycle: fixed breadcrumbs and links everywhere
  • refactor: :recycle: fixed bulk updates everywhere
  • refactor: :recycle: fixed hotel checklist from running when not hotel
  • refactor: :recycle: fixed map form and card
  • refactor: :recycle: fixed some keys
  • refactor: :recycle: fixed some text color
  • refactor: :recycle: fixing colors and WinkLinks
  • refactor: :recycle: fixing up portal paths
  • refactor: :recycle: improved recognition form
  • refactor: :recycle: improved WCAG Skip link to use routerLink
  • refactor: :recycle: made sure activeCancellationPolicy is used everywhere
  • refactor: :recycle: made using activeCancellationPolicy is used everywhere
  • refactor: :recycle: migrated interfaces from PR 331
  • refactor: :recycle: missing keys and paths
  • refactor: :recycle: moved administration to admin
  • refactor: :recycle: myAccountUrl now points to IAM server
  • refactor: :recycle: nothing depends on clientId any longer except OAuth2
  • refactor: :recycle: re-organizing routes
  • refactor: :recycle: removed commented out member variables
  • refactor: :recycle: removed hotel location from hotel landing bottom
  • refactor: :recycle: removed WordPress modal
  • refactor: :recycle: switched to Stripe checkout session
  • refactor: :recycle: unify insight pages layout and clean up social-list
  • refactor: :recycle: updated footer links
  • refactor: :recycle: updated how the price is displayed in Stripe widget
  • refactor: :recycle: updated versions in all packages. custom font now loads in IBE
  • refactor: :zap: let’s try to load all modules at the same time
  • refactor: consolidate booking-contract domain and reorganize payment libs (#553)
  • refactor: consolidate URL creation pipes into managing-entity domain
  • refactor: harden release script with guards, confirmation, and error handling
  • refactor: only load wizard when managing entity is a hotel
  • refactor: rename extranet app to portal (#562)
  • refactor: standardize card image rendering with mediaCardImage directive
  • refactor(a11y): extract avatar-initials palette to a shared constant
  • refactor(api): normalize backend URLs + apply *-data.service.ts naming
  • refactor(booking): collapse refund list to a single refund
  • refactor(booking): gate resend-email via ngx-date-fns pipes
  • refactor(booking): merge booking-contract state into admin-booking and clean up dead code
  • refactor(booking): split booking-session state from consumer-booking
  • refactor(dashboard): drop dead goToAnalytics binding and redirectToAnalytics handler
  • refactor(dashboard): split overview/analytics by managing-entity type with deferred lazy loading
  • refactor(inventory): redesign card header and align quick-search form
  • refactor(portal): extract sidebar into section components to fix perf (#579)
  • refactor(portals): extract creator section into PortalCreatorHomeComponent
  • refactor(property): remove managing entity status column, icons, and filter from property grid
  • refactor(shared): add copyToClipboard directive and migrate clipboard usage
  • refactor(sidebar): consolidate browse hotels/inventory under creator studio
  • refactor(studio): redesign inventory search page and standardize flip cards
  • refactor(studio): redesign supplier search page and standardize cards
  • style: :lipstick: added affiliate video
  • style: :lipstick: formatting studio content
  • style: :lipstick: improved social pages
  • style: :lipstick: loading in sidebar now working better
  • style: :lipstick: moved portal home to the right place
  • style: :lipstick: resolves #614
  • style: :lipstick: updated our ghost element loading with pure Tailwind CSS
  • style: align sellable URL cards with guest-room UX (#557)
  • style(#617): :lipstick: improved payment and checkout modals
  • test: :green_heart: fix coverage thresholds for 31 failing projects
  • test: :green_heart: fix tests
  • test: :green_heart: fixed 2 failing tests
  • test: :green_heart: fixed all tests and lint errors
  • test: :green_heart: fixed lint error
  • test: :green_heart: fixed lint tests
  • test: :green_heart: fixed more tests
  • test: :green_heart: fixed tests
  • test: :green_heart: fixed tests and coverage
  • test: :green_heart: fixing tests
  • test: :green_heart: lint and errors fixed
  • test: :green_heart: more tests (#523)
  • test: :green_heart: tests passing
  • test: :rotating_light: fixed lint error
  • test: :rotating_light: fixed lint errors and some tests
  • test: add GA4 effect tests to meet coverage thresholds (#529)
  • test: fix coverage thresholds for booking-admin, lead-admin, property-admin, user-admin
  • test: fix failing tests and restore 85% coverage across 17 projects
  • test: fix spec failures from BookingContractDataService rename and missing providers
  • test: fix test coverage above 85% for inventory-supplier projects
  • test: green_heart: updated tests
  • test: improve coverage for 6 projects to meet 85% threshold
  • test: improve coverage for add-on-card, room-types, and green-index-form
  • test: repair stale specs across 16 projects after production drift
  • test: replace cypress with playwright and add e2e booking happy path (#526)
  • test: update stale specs to match current component behavior
  • test(booking-engine): add jest coverage and fix lint for payment-modal refactor
  • test(booking-engine): rewrite e2e booking harness and add create-and-cancel flow
  • test(checkout): improve payment modal test coverage from 84% to 96% branch
  • test(customization): fix lint errors and improve type safety in feature-form spec (#569)
  • test(e2e): add page-health harness and smoke/deep cadence split
  • test(portal): add end-to-end Playwright coverage for portal app
  • test(property): fix inventory-usage spec url to match normalized endpoint
  • test(social-list): make e2e run authless and green
  • test(sso): add IdP account-lifecycle e2e (Turnstile-gated)