1var e={booking:{wizard:{title:`Book Appointment`,back:`Back`,close:`Close`,continue:`Continue`,step_number:`Step {{current}} of {{total}}`,step_service:`Select Service`,step_staff:`Choose Professional`,step_datetime:`Pick Date & Time`,step_details:`Your Details`,step_review:`Review & Confirm`,step_confirmation:`Confirmation`},service:{duration_mins:`{{minutes}} min`,duration_hours:`{{hours}} hr`,duration_hours_mins:`{{hours}} hr {{minutes}} min`,select:`Select {{name}}`,deselect:`Deselect {{name}}`,deposit_required:`Deposit required: {{amount}}`,deposit_percentage:`{{percentage}}% deposit required`,deposit_required_generic:`Deposit required`,consultation_required:`Consultation required`},service_selection:{title:`Select Services`,description:`Choose one or more services for your appointment`,search_placeholder:`Search services...`,all_categories:`All`,selected_count:`{{count}} service(s) selected`,clear_all:`Clear all`,no_results:`No services found`,no_services:`No services available`,no_results_description:`Try adjusting your search or filters`,clear_filters:`Clear filters`,total_selected:`{{count}} service(s) selected`,select_at_least_one:`Select at least one service`},staff:{select:`Select {{name}}`,deselect:`Deselect {{name}}`,top_rated:`Top Rated`,new:`New`,unavailable:`Unavailable`,review_count:`{{count}} reviews`,first_available:`First Available`,first_available_description:`We'll assign the next available professional who can perform your selected services`,selected:`Selected`,select_first_available:`Select first available`,deselect_first_available:`Deselect first available`},staff_selection:{title:`Choose Professional`,description:`Select who you'd like to perform your services`,recommended:`Recommended`,or_choose_specific:`Or choose a specific professional`,available_professionals:`Available Professionals`,no_compatible_staff:`No available professionals`,no_compatible_staff_description:`Unfortunately, no professionals are available for your selected services. Please go back and modify your service selection.`,selected_first_available:`You've selected: First Available Professional`,selected_staff:`You've selected: {{name}}`,ready_to_continue:`Ready to continue`,please_select:`Please select an option`},datetime:{today:`Today`,morning:`Morning`,afternoon:`Afternoon`,evening:`Evening`,peak:`Peak`,unavailable:`Unavailable`,loading_slots:`Loading available times...`,no_slots_available:`No times available`,no_slots_description:`No available time slots for this date. Please select a different date.`,error_loading_slots:`Failed to load available times`},datetime_selection:{title:`Select Date & Time`,description_specific_staff:`Choose when you'd like your appointment with the selected professional`,description_first_available:`Choose when you'd like your appointment`,total_duration:`Total duration`,services_count:`{{count}} services`,select_date:`Select Date`,select_time:`Select Time`,next_available_suggestion:`No times available on this date. Next available:`,go_to_date:`Go to this date`,select_date_first:`Select a date first`,select_date_first_description:`Please choose a date to see available time slots`,selected_datetime:`Selected`,ready_to_continue:`Ready to continue`,select_datetime_to_continue:`Select date and time to continue`},details:{title:`Your Details`,description:`Please provide your contact information to complete the booking`,first_name:`First Name`,last_name:`Last Name`,email:`Email`,phone:`Phone Number`,notes:`Special Requests`,optional:`Optional`,first_name_placeholder:`John`,last_name_placeholder:`Doe`,email_placeholder:`[email protected]`,phone_placeholder:`+1 234 567 8900`,notes_placeholder:`Any special requests or requirements...`,first_name_required:`First name is required`,last_name_required:`Last name is required`,email_required:`Email is required`,email_invalid:`Please enter a valid email`,phone_required:`Phone number is required`,phone_invalid:`Please enter a valid phone number`,ready_to_continue:`Ready to continue`,complete_required_fields:`Complete all required fields`,no_booking:`No Booking Found`,no_booking_desc:`We couldn't find this booking. It may have been cancelled or doesn't exist.`,confirmed:`Booking Confirmed`,cancelled:`Booking Cancelled`,reference:`Reference Code`,venue:`Venue`,date:`Date`,time:`Time`,professional:`Professional`,services:`Services`,total:`Total`}
1,review:{title:`Review Your Booking`,description:`Please review your booking details before confirming`,services:`Services`,professional:`Professional`,date_time:`Date & Time`,your_details:`Your Details`,edit:`Edit`,price_breakdown:`Price Breakdown`,subtotal:`Subtotal`,discount:`Discount`,tax:`Tax`,service_fee:`Service Fee`,total:`Total`,deposit_due_now:`Deposit due now`,remaining_due_at_venue:`Remaining due at venue`,policies:`Cancellation & Reschedule Policy`,cancellation_policy:`Free cancellation up to 24 hours before your appointment. Late cancellations or no-shows may be subject to a fee.`,reschedule_policy:`Rescheduling is free and can be done up to 2 hours before your appointment.`,ready_to_confirm:`Ready to confirm your booking?`,confirm_booking:`Confirm Booking`,error:`An error occurred while creating the booking. Please try again.`},confirmation:{title:`Booking Confirmed!`,description:`Your appointment has been successfully booked`,reference:`Reference`,booking_details:`Booking Details`,venue:`Venue`,date_time:`Date & Time`,professional:`Professional`,services:`Services`,total:`Total`,add_to_calendar:`Add to Calendar`,google_calendar:`Google Calendar`,download_ical:`Download iCal`,back_to_venue:`Back to Venue`,back_to_search:`Back to Search`,view_booking:`View Booking Details`,confirmation_email:`A confirmation email has been sent to {{email}}`,at:`at`,booking_reference:`Booking Reference`},actions:{reschedule:`Reschedule`,cancel:`Cancel Booking`},status:{upcoming:`Upcoming`,completed:`Completed`,cancelled:`Cancelled`},history:{title:`Booking History`,no_bookings:`No Bookings Yet`,no_bookings_desc:`Your booking history will appear here once you make your first booking.`,reference:`Ref`,services:`services`},reschedule:{title:`Reschedule Booking`,current:`Current Booking`,select_date:`Select New Date`,select_time:`Select New Time`,too_late:`Too Late to Reschedule`,cutoff_message:`Bookings can only be rescheduled up to 2 hours before the appointment.`,select_datetime:`Please select a date and time`,saving:`Saving...`,confirm:`Confirm Reschedule`},cancel:{title:`Cancel Booking?`,subtitle:`This action cannot be undone`,modalTitle:`Cancel Booking`,reference:`Reference`,late_warning_title:`Late Cancellation`,late_warning_message:`Cancelling within 24 hours of your appointment may result in a cancellation fee.`,warningTitle:`Are you sure?`,warningMessage:`This action cannot be undone. Please review the cancellation policy before proceeding.`,reasonLabel:`Reason for cancellation *`,commentsLabel:`Additional comments (optional)`,keep:`Keep Booking`,cancelling:`Cancelling...`,confirm:`Yes, Cancel`,confirmAction:`Confirm Cancellation`,reasons:{schedule_conflict:`Schedule conflict`,found_alternative:`Found alternative service`,personal_reasons:`Personal reasons`,pricing:`Pricing concerns`,other:`Other`}}}},t={actions:{search:`Search`,filter:`Filter`,sort:`Sort`,close:`Close`,cancel:`Cancel`,save:`Save`,edit:`Edit`,delete:`Delete`,view:`View`,viewAll:`View all`,showMore:`Show more`,showLess:`Show less`,apply:`Apply`,reset:`Reset`,clearAll:`Clear all`,confirm:`Confirm`,back:`Back`,next:`Next`,submit:`Submit`,loading:`Loading`,retry:`Retry`,signIn:`Sign In`,signUp:`Sign Up`,logout:`Logout`,profile:`Profile`,reschedule:`Reschedule`,getDirections:`Get directions`,bookAgain:`Book again`,leaveReview:`Leave a review`,tryAgain:`Try again`,findVenues:`Find venues`,preview:`Preview`,facebook:`Facebook`,twitter:`Twitter`,linkedin:`LinkedIn`,instagram:`Instagram`,save_changes:`Save Changes`,clear:`Clear`,continue:`Continue`},navigation:{home:`Home`,search:`Search`,bookings:`Bookings`,favorites:`Favorites`,account:`Account`,help:`Help`,about:`About`,contact:`Contact`,blog:`Blog`,careers:`Careers`,myBookings:`My Bookings`,listYourBusiness:`List your business`,searchPlaceholder:`Search for venues, services, or locations...`,searchPlaceholderMobile:`Search venues or services...`,searchVenueOrItem:`Search a venue or item`,openMenu:`Open menu`,closeMenu:`Close menu`,moreOptions:`More options`,pricing:`Pricing`,marketplace:`Marketplace`,logIn:`Log in`,logInOrSignUp:`Log in or sign up`,businessTypes:`Business types`,menu:`Me
1nu`,forCustomers:`For customers`,forBusinesses:`For businesses`,downloadApp:`Download the app`,helpSupport:`Help and support`,logOut:`Log out`,profile:`Profile`,appointments:`Appointments`,wallet:`Wallet`,forms:`Forms`,productOrders:`Product orders`,settings:`Settings`},demoNavigationMenu:{title:`iMarket Demo Pages`,description:`Navigate through all available demo pages in the iMarket application`,openAriaLabel:`Open demo navigation menu`,footer:`{{count}} demo pages available`,pages:{home:`Home`,searchResults:`Search Results`,wallet:`Wallet`,forBusiness:`For Business`,devLibrary:`Dev Library`}},status:{active:`Active`,inactive:`Inactive`,pending:`Pending`,confirmed:`Confirmed`,cancelled:`Cancelled`,completed:`Completed`,available:`Available`,unavailable:`Unavailable`,closed:`Closed`},time:{at:`at`},text:{includes:`Includes`,independent:`Independent`,team:`Team`,certifications:`Certifications`},messages:{success:`Success!`,error:`An error occurred`,noResults:`No results found`,tryAgain:`Please try again`,somethingWentWrong:`Something went wrong`,savedSuccessfully:`Saved successfully`,deletedSuccessfully:`Deleted successfully`},language:{selectLanguage:`Select language`,choosePreferred:`Choose your preferred language`,languagePreferencesSaved:`Language preferences will be saved to your account`},map:{loading:`Loading map...`,loadingSubtitle:`Enterprise-grade vector rendering`},units:{km:`km`,mi:`mi`,hour:`hour`,hours:`hours`,minute:`minute`,minutes:`minutes`,day:`day`,days:`days`,min:`min`},days:{monday:`Monday`,tuesday:`Tuesday`,wednesday:`Wednesday`,thursday:`Thursday`,friday:`Friday`,saturday:`Saturday`,sunday:`Sunday`},faq:{frequentlyAskedQuestions:`Frequently asked questions`}},n={seo:{tabs:{overview:`Overview`,coverage:`Coverage`,performance:`Performance`,coreWebVitals:`Core Web Vitals`,rankings:`Rankings`}},ariaLabels:{close:`Close`,menu:`Menu`,moreOptions:`More options`,search:`Search`,searchFilters:`Search filters`,searchResults:`Search results`,filter:`Filter`,sort:`Sort`,apply:`Apply`,reset:`Reset`,clearAll:`Clear all`,confirm:`Confirm`,back:`Back`,next:`Next`,submit:`Submit`,loading:`Loading`,errorLoadingImage:`Error loading image`,retry:`Retry`,signIn:`Sign In`,signUp:`Sign Up`,logout:`Logout`,profile:`Profile`,reschedule:`Reschedule`,getDirections:`Get directions`,bookAgain:`Book again`,leaveReview:`Leave a review`,tryAgain:`Try again`,viewVenue:`View venue`,findVenues:`Find venues`,preview:`Preview`,scrollLeft:`Scroll left`,scrollRight:`Scroll right`,zoomIn:`Zoom in`,zoomOut:`Zoom out`,recenterMap:`Recenter map`,qrCode:`QR code`,venue:`Venue`,hero:`Hero image`,decorativeImage:`Decorative image`,softwareScreenshot:`Software screenshot`,businessDashboard:`Business dashboard`,customerApp:`Customer app`,businessApp:`Business app`,marketplaceApp:`Marketplace app`,customerAppMockup:`Customer app mockup`,professionalAppMockup:`Professional app mockup`,careersHero:`Careers hero image`,helpCenterHero:`Help center hero image`,supportHero:`Support hero image`,partnersHero:`Partners hero image`,blogHero:`Blog hero image`,statusHero:`Status hero image`,facebook:`Facebook`,twitter:`Twitter`,linkedin:`LinkedIn`,instagram:`Instagram`,shareOnTwitter:`Share on Twitter`,shareOnFacebook:`Share on Facebook`,shareOnLinkedIn:`Share on LinkedIn`,copyLink:`Copy link`,likeArticle:`Like article`,bookmarkArticle:`Bookmark article`,save_changes:`Save Changes`,clear:`Clear`,continue:`Continue`},accessibility:{skipToMainContent:`Skip to main content`}},r={testingExamples:{main:{title:`Testing & Validation Examples`,description:`Interactive examples demonstrating testing utilities and validation patterns`,utilities:{title:`Testing Utilities`,description:`These examples demonstrate the testing and validation utilities from /utils/testing.ts and /hooks/useValidation.ts`},production:{title:`Production Testing`,description:`In production, use React Testing Library, Jest, and jest-axe for comprehensive testing. These examples show how our utilities work interactively.`}},formValidation:{title:`Form Validation Example`,description:`Real-time val
1idation with useFormValidation hook`,actions:{submit:`Submit Form`,reset:`Reset`},alerts:{validReady:`Form is valid! Ready to submit.`},status:{label:`Form Status:`,valid:`Valid`,invalid:`Invalid`,unsaved:`Unsaved Changes`},fields:{name:{label:`Name *`,required:`Name is required`,minLength:`Name must be at least 2 characters`},email:{label:`Email *`,required:`Email is required`,invalid:`Invalid email format`},phone:{label:`Phone *`,required:`Phone is required`,invalid:`Invalid phone number`},message:{label:`Message *`,required:`Message is required`,minLength:`Message must be at least 10 characters`,maxLength:`Message must be less than 500 characters`,characters:`{{count}}/500 characters`}}},dataValidation:{title:`Data Validation Example`,description:`Testing data validation utilities`,actions:{run:`Run Validation Tests`},resultsTitle:`Test Results:`,inputLabel:`Input:`,result:{pass:`PASS`,fail:`FAIL`},tests:{validEmail:{title:`Valid Email`},invalidEmail:{title:`Invalid Email`},validPhone:{title:`Valid Phone`},invalidPhone:{title:`Invalid Phone`},validVenue:{title:`Valid Venue Structure`,input:{name:`Sample Venue`,location:`Demo City`}},invalidVenue:{title:`Invalid Venue Structure`}}},accessibility:{title:`Accessibility Testing Example`,description:`WCAG 2.1 AA compliance checks`,actions:{run:`Run Accessibility Tests`},sampleContent:`Sample Content`,sampleHeading:`Section Heading`,resultsTitle:`Accessibility Results:`,checks:{images:{title:`Images have alt text`,missing_one:`{{count}} image missing alt text`,missing_other:`{{count}} images missing alt text`},forms:{title:`Form inputs have labels`,missing_one:`{{count}} input missing labels`,missing_other:`{{count}} inputs missing labels`},headings:{title:`Proper heading hierarchy`}}}}},i={...t,...e,...r,...n};export{i as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.