@ticketboothapp/booking 0.1.11 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -1
- package/src/app/photo-sessions/photo-packages.ts +75 -0
- package/src/assets/icons/partner-logos/getyourguide.svg +8 -0
- package/src/assets/icons/plus.svg +3 -0
- package/src/colours.css +23 -0
- package/src/components/BookingDetails.module.css +1591 -0
- package/src/components/BookingDetails.tsx +2072 -354
- package/src/components/BookingWidget.tsx +28 -248
- package/src/components/JobApplicationDialog.module.css +440 -0
- package/src/components/JobApplicationDialog.tsx +620 -0
- package/src/components/ManageBookingView.tsx +28 -36
- package/src/components/PhoneInputWithCountry.module.css +131 -0
- package/src/components/PhoneInputWithCountry.tsx +44 -0
- package/src/components/PickupLocationDialog.module.css +360 -0
- package/src/components/PickupLocationDialog.tsx +357 -0
- package/src/components/PickupLocationMap.tsx +110 -0
- package/src/components/PostBookingDependentAddOnUpsell.module.css +174 -0
- package/src/components/PostBookingDependentAddOnUpsell.tsx +407 -0
- package/src/components/accordion.css +27 -0
- package/src/components/accordion.tsx +29 -0
- package/src/components/analytics/AnalyticsConsentRestore.tsx +19 -0
- package/src/components/analytics/AnalyticsScripts.tsx +106 -0
- package/src/components/analytics/CookieConsentBanner.css +86 -0
- package/src/components/analytics/CookieConsentBanner.tsx +102 -0
- package/src/components/booking/AddOnsSection.module.css +10 -0
- package/src/components/booking/AddOnsSection.tsx +184 -0
- package/src/components/booking/AdminPaymentChoiceModal.tsx +98 -0
- package/src/components/booking/BookingDialog.module.css +643 -0
- package/src/components/booking/BookingDialog.tsx +356 -0
- package/src/components/booking/BookingFlow.tsx +4385 -0
- package/src/components/booking/BookingFlowCollage.module.css +148 -0
- package/src/components/booking/BookingFlowCollage.tsx +184 -0
- package/src/components/booking/BookingFlowPlaceholder.module.css +27 -0
- package/src/components/booking/BookingFlowPlaceholder.tsx +25 -0
- package/src/components/booking/BookingFlowPreview.tsx +51 -0
- package/src/components/booking/BookingProductGrid.module.css +359 -0
- package/src/components/booking/BookingProductGrid.tsx +497 -0
- package/src/components/booking/Calendar.module.css +616 -0
- package/src/components/{Calendar.tsx → booking/Calendar.tsx} +464 -247
- package/src/components/booking/CancellationPolicySelector.module.css +124 -0
- package/src/components/booking/CancellationPolicySelector.tsx +142 -0
- package/src/components/booking/ChangeBookingDialog.tsx +562 -0
- package/src/components/booking/CheckoutForm.module.css +244 -0
- package/src/components/booking/CheckoutForm.tsx +364 -0
- package/src/components/{CheckoutModal.tsx → booking/CheckoutModal.tsx} +176 -19
- package/src/components/booking/DapFlowCollage.tsx +88 -0
- package/src/components/booking/DapTourDescription.tsx +35 -0
- package/src/components/booking/DependentAddOnBookingDialog.tsx +1350 -0
- package/src/components/booking/DependentAddOnPaymentForm.tsx +124 -0
- package/src/components/booking/InfoTooltip.tsx +108 -0
- package/src/components/booking/ItineraryBox.module.css +258 -0
- package/src/components/booking/ItineraryBox.tsx +550 -0
- package/src/components/{ItineraryBuilder.tsx → booking/ItineraryBuilder.tsx} +1 -2
- package/src/components/booking/ItineraryPlaceholder.module.css +45 -0
- package/src/components/booking/ItineraryPlaceholder.tsx +26 -0
- package/src/components/{MealDrinkAddOnSelector.tsx → booking/MealDrinkAddOnSelector.tsx} +21 -13
- package/src/components/booking/PickupLocationSelector.module.css +124 -0
- package/src/components/{PickupLocationSelector.tsx → booking/PickupLocationSelector.tsx} +315 -290
- package/src/components/booking/PickupTimeSelector.module.css +134 -0
- package/src/components/booking/PickupTimeSelector.tsx +112 -0
- package/src/components/{PriceBreakdown.tsx → booking/PriceBreakdown.tsx} +3 -3
- package/src/components/{PriceSummary.tsx → booking/PriceSummary.tsx} +51 -28
- package/src/components/booking/PrivateShuttleBookingFlow.module.css +357 -0
- package/src/components/booking/PrivateShuttleBookingFlow.tsx +2662 -0
- package/src/components/booking/PromoCodeInput.module.css +166 -0
- package/src/components/booking/PromoCodeInput.tsx +99 -0
- package/src/components/booking/ReturnTimeSelector.module.css +173 -0
- package/src/components/booking/ReturnTimeSelector.tsx +145 -0
- package/src/components/{TermsAcceptance.tsx → booking/TermsAcceptance.tsx} +9 -8
- package/src/components/booking/TicketSelector.module.css +164 -0
- package/src/components/booking/TicketSelector.tsx +199 -0
- package/src/components/booking/TourDescription.module.css +304 -0
- package/src/components/booking/TourDescription.tsx +273 -0
- package/src/components/booking/booking-flow-ui.ts +15 -1
- package/src/components/booking/booking-flow.css +944 -0
- package/src/components/bottom-sheet.module.css +78 -0
- package/src/components/bottom-sheet.tsx +60 -0
- package/src/components/breadcrumb.module.css +40 -0
- package/src/components/breadcrumb.tsx +36 -0
- package/src/components/button.css +245 -0
- package/src/components/button.tsx +152 -0
- package/src/components/client-bottom-sheet.tsx +14 -0
- package/src/components/colorable-svg.tsx +29 -0
- package/src/components/conditional-footer.tsx +27 -0
- package/src/components/contact-us.module.css +147 -0
- package/src/components/contact-us.tsx +49 -0
- package/src/components/email-signup.css +151 -0
- package/src/components/email-signup.tsx +63 -0
- package/src/components/faq-wrapper.module.css +47 -0
- package/src/components/faq-wrapper.tsx +15 -0
- package/src/components/footer.css +187 -0
- package/src/components/footer.tsx +143 -0
- package/src/components/global-simple-modal.tsx +33 -0
- package/src/components/google-review-summary.module.css +77 -0
- package/src/components/google-review-summary.tsx +50 -0
- package/src/components/hero-image.css +13 -0
- package/src/components/hero-image.tsx +44 -0
- package/src/components/image.css +29 -0
- package/src/components/image.tsx +113 -0
- package/src/components/language-aware-link.tsx +72 -0
- package/src/components/language-switcher.module.css +124 -0
- package/src/components/language-switcher.tsx +75 -0
- package/src/components/map-section.css +59 -0
- package/src/components/map-section.tsx +63 -0
- package/src/components/navbar.module.css +152 -0
- package/src/components/navbar.tsx +125 -0
- package/src/components/parallax-provider.tsx +11 -0
- package/src/components/partner/PartnerBookingPage.module.css +130 -0
- package/src/components/partner/PartnerBookingPage.tsx +390 -0
- package/src/components/partner/PartnerBookingPageWithBrowserMetadata.tsx +19 -35
- package/src/components/product-tag.module.css +30 -0
- package/src/components/product-tag.tsx +34 -0
- package/src/components/product-theme-pages/best-option.module.css +70 -0
- package/src/components/product-theme-pages/best-option.tsx +35 -0
- package/src/components/product-theme-pages/extended-tour-options.module.css +22 -0
- package/src/components/product-theme-pages/extended-tour-options.tsx +11 -0
- package/src/components/product-theme-pages/image-modal.tsx +248 -0
- package/src/components/product-theme-pages/photo-gallery.module.css +200 -0
- package/src/components/product-theme-pages/photo-gallery.tsx +90 -0
- package/src/components/product-theme-pages/product-theme-page-layout.module.css +13 -0
- package/src/components/product-theme-pages/product-theme-page-layout.tsx +67 -0
- package/src/components/product-theme-pages/top-of-fold.module.css +179 -0
- package/src/components/product-theme-pages/top-of-fold.tsx +80 -0
- package/src/components/product-tile/image-only-product-tile-desktop.module.css +106 -0
- package/src/components/product-tile/image-only-product-tile-desktop.tsx +56 -0
- package/src/components/product-tile/image-only-product-tile-mobile.module.css +122 -0
- package/src/components/product-tile/image-only-product-tile-mobile.tsx +89 -0
- package/src/components/product-tile/image-only-product-tile.tsx +44 -0
- package/src/components/product-tile/product-tile-card.module.css +84 -0
- package/src/components/product-tile/product-tile-card.tsx +61 -0
- package/src/components/review-highlights-section.css +85 -0
- package/src/components/review-highlights-section.tsx +127 -0
- package/src/components/season-closure-overlay.module.css +99 -0
- package/src/components/season-closure-overlay.tsx +98 -0
- package/src/components/simple-modal.tsx +69 -0
- package/src/components/simple-top-of-fold.module.css +76 -0
- package/src/components/simple-top-of-fold.tsx +34 -0
- package/src/components/spacer.css +41 -0
- package/src/components/spacer.tsx +23 -0
- package/src/components/star-rating.module.css +74 -0
- package/src/components/star-rating.tsx +48 -0
- package/src/components/terms/TermsContent.tsx +178 -0
- package/src/components/title-subtitle.module.css +10 -0
- package/src/components/title-subtitle.tsx +30 -0
- package/src/components/translatable-reviews.tsx +75 -0
- package/src/components/value-pill.module.css +59 -0
- package/src/components/value-pill.tsx +46 -0
- package/src/components/value-props.css +185 -0
- package/src/components/value-props.tsx +88 -0
- package/src/constants/booking-guide-quiz.ts +64 -0
- package/src/constants/contact-info.ts +2 -0
- package/src/constants/faq.ts +44 -0
- package/src/constants/images.ts +556 -0
- package/src/constants/json-ld/faq-json-ld.tsx +170 -0
- package/src/constants/json-ld/homepage-json-ld.tsx +138 -0
- package/src/constants/json-ld/job-posting-json-ld.tsx +92 -0
- package/src/constants/json-ld/organization-json-ld.tsx +62 -0
- package/src/constants/json-ld/page-json-ld.tsx +6 -0
- package/src/constants/json-ld/product-json-ld.tsx +154 -0
- package/src/constants/json-ld/review-json-ld.tsx +377 -0
- package/src/constants/navigation-links/footer-links.ts +48 -0
- package/src/constants/navigation-links/nav-bar-links.ts +41 -0
- package/src/constants/navigation-links/navigation-link.ts +6 -0
- package/src/constants/pill-values.ts +210 -0
- package/src/constants/products.ts +155 -0
- package/src/constants/quiz-recommendations.ts +506 -0
- package/src/constants/reviews.ts +75 -0
- package/src/constants/staff.ts +197 -0
- package/src/constants/value-props.ts +58 -0
- package/src/data/dap-descriptions/session-couples-families-friends.en.json +61 -0
- package/src/data/dap-descriptions/session-elopements.en.json +60 -0
- package/src/data/dap-descriptions/session-proposals.en.json +60 -0
- package/src/data/product-descriptions/afternoon-delight.en.json +35 -0
- package/src/data/product-descriptions/emerald-lake-escape.en.json +68 -0
- package/src/data/product-descriptions/lake-louise-adventure.en.json +74 -0
- package/src/data/product-descriptions/moraine-lake-adventure.en.json +78 -0
- package/src/data/product-descriptions/moraine-lake-sunrise-lake-louise-golden-hour.en.json +65 -0
- package/src/data/product-descriptions/moraine-lake-sunrise.en.json +64 -0
- package/src/data/product-descriptions/private-tour.en.json +80 -0
- package/src/data/product-descriptions/two-lakes-combo.en.json +65 -0
- package/src/data/products-config.json +101 -0
- package/src/hooks/use-bottom-sheet.tsx +15 -0
- package/src/hooks/use-simple-modal.tsx +27 -0
- package/src/hooks/useBookingSourceMetadataFromLocation.ts +21 -0
- package/src/hooks/useEmailSubscription.tsx +103 -0
- package/src/hooks/useEmbeddedInIframe.ts +16 -0
- package/src/hooks/useIsBookingLaunchLive.ts +49 -0
- package/src/hooks/useQuiz.tsx +210 -0
- package/src/index.ts +27 -2
- package/src/lib/analytics.ts +197 -0
- package/src/lib/booking/booking-source.ts +20 -2
- package/src/lib/{checkout-breakdown.ts → booking/checkout-breakdown.ts} +1 -1
- package/src/lib/booking/correlation-id.ts +46 -0
- package/src/lib/{i18n → booking/i18n}/messages/en.json +48 -4
- package/src/lib/{i18n → booking/i18n}/messages/fr.json +48 -4
- package/src/lib/booking/itinerary-display.ts +36 -0
- package/src/lib/{itinerary-labels.ts → booking/itinerary-labels.ts} +1 -1
- package/src/lib/{location-calculations.ts → booking/location-calculations.ts} +4 -4
- package/src/lib/{location-utils.ts → booking/location-utils.ts} +26 -0
- package/src/lib/{map-utils.ts → booking/map-utils.ts} +3 -3
- package/src/lib/booking/normalize-booking-product-id.ts +7 -0
- package/src/lib/{pickup-location-types.ts → booking/pickup-location-types.ts} +2 -2
- package/src/lib/{pricing.ts → booking/pricing.ts} +2 -2
- package/src/lib/booking/product-option-id.ts +35 -0
- package/src/lib/booking/source-metadata.ts +72 -7
- package/src/lib/booking/sunday-week.ts +14 -0
- package/src/lib/booking/trace-context.ts +62 -0
- package/src/lib/booking-api.ts +1793 -0
- package/src/lib/{constants.ts → booking-constants.ts} +11 -5
- package/src/lib/booking-types.ts +36 -0
- package/src/lib/currency.ts +38 -45
- package/src/lib/dap-descriptions.ts +50 -0
- package/src/lib/dap-itinerary-preview.ts +315 -0
- package/src/lib/dependent-add-on-api.ts +434 -0
- package/src/lib/env.ts +89 -5
- package/src/lib/firebase.ts +20 -0
- package/src/lib/job-application-api.ts +83 -0
- package/src/lib/manage-booking-embed-print.ts +16 -0
- package/src/lib/manage-booking-post-checkout.ts +68 -0
- package/src/lib/photo-dap-config.ts +228 -0
- package/src/lib/pickup/map-utils.ts +56 -0
- package/src/lib/pickup/marker-icons.ts +19 -0
- package/src/lib/product-descriptions.ts +66 -0
- package/src/lib/products-config.ts +73 -0
- package/src/providers/booking-dialog-provider.tsx +107 -38
- package/src/providers/bottom-sheet-provider.tsx +40 -0
- package/src/providers/dependent-add-on-dialog-provider.tsx +105 -0
- package/src/radius.css +5 -0
- package/src/spacing.css +7 -0
- package/src/strings/en.json +1774 -0
- package/src/strings/es.json +1573 -0
- package/src/strings/fr.json +1573 -0
- package/src/strings/index.js +23 -0
- package/src/text-style.css +97 -0
- package/src/types/fareharbor.d.ts +12 -0
- package/src/types/quiz.ts +59 -0
- package/src/utils/currency-converter.ts +101 -0
- package/src/components/BookingFlow.tsx +0 -2952
- package/src/components/LanguageSwitcher.tsx +0 -30
- package/src/components/PrivateShuttleBookingFlow.tsx +0 -2290
- package/src/components/ProductList.tsx +0 -78
- package/src/components/WhatsAppPhoneInput.tsx +0 -224
- package/src/components/index.ts +0 -31
- package/src/lib/api.ts +0 -801
- package/src/lib/booking-api-auth.ts +0 -9
- package/src/lib/checkout-breakdown.test.ts +0 -70
- package/src/types/google-maps.d.ts +0 -2
- /package/src/components/{CurrencySwitcher.tsx → booking/CurrencySwitcher.tsx} +0 -0
- /package/src/components/{ErrorBoundary.tsx → booking/ErrorBoundary.tsx} +0 -0
- /package/src/lib/{i18n → booking/i18n}/config.ts +0 -0
- /package/src/lib/{i18n → booking/i18n}/index.tsx +0 -0
- /package/src/lib/{marker-icons.ts → booking/marker-icons.ts} +0 -0
- /package/src/lib/{places-api.ts → booking/places-api.ts} +0 -0
- /package/src/lib/{theme.ts → booking/theme.ts} +0 -0
- /package/src/lib/{utils.ts → booking/utils.ts} +0 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
export type Review = {
|
|
2
|
+
link: string;
|
|
3
|
+
review: string;
|
|
4
|
+
author: string;
|
|
5
|
+
profilePicture: string;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export const REVIEWS: Review[] = [
|
|
9
|
+
{
|
|
10
|
+
link: 'https://maps.app.goo.gl/7q5CAwBTEkdQSbG2A',
|
|
11
|
+
review: "Via Via Moraine is a <b>great shuttle service to both Moraine and Lake Louise</b> and beyond. Comfortable, efficient, friendly and lots of tips on where to go and what to see. We had <b>plenty of time to hike around Moraine lake</b> on an amazing sunny day. Definitely <b>the best stress free way to visit special places in and around the Banff area</b>. Thank you Nathan, Jess and our driver Rebecca, we had a great time! Warm regards, Meyrem Almaci & family",
|
|
12
|
+
author: 'Meyrem',
|
|
13
|
+
profilePicture: 'meyrem-profile-pic.png'
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
link: 'https://maps.app.goo.gl/s2e5uXXpjVWQ4hvA8',
|
|
17
|
+
review: "We recently did the <b>Moraine Lake and Lake Louise shuttle from Canmore</b>, and it was great. Léo was our driver, and he was awesome. I was sitting in the first row so I got to chat with him a bit, he gave me some cool facts about the mountains and areas along the drives, and gave us some <b>tips of things we could do on other days of our vacation to Banff National Park</b>. When we arrived at each destination Léo would tell the full group from the van about the various things to do/see at each stop so we didn't feel lost when arriving. Léo was also mindful of bumps and things along the mountain roads, and I noticed he was good at following all the rules during the entry process to the restricted areas (like where to stop, waiting for gates to fully open or close, etc). I noticed many other tour vansbuses didn't do that, and while that doesn't have any impact on the trip itself, it did provide some comfort in trusting Leo and his driving.",
|
|
18
|
+
author: 'Ryan G.',
|
|
19
|
+
profilePicture: 'ryan-g-profile-pic.png'
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
link: 'https://maps.app.goo.gl/yCxqGdTMvcvmZvMh7',
|
|
23
|
+
review: 'My sister and I were <b>unable to book tickets through the parks Canada service during our visit</b>. We were so thankful to be able to see <b>both Moraine and Lake Louise with Via Via!</b> They were excellent! Our driver Kai was informative and kind, plus drove well and was on time. We loved that this tour allowed 2 hours at each lake and you could also extend your time at Lake Louise if you wanted to hike farther. We would highly recommend using this local company!',
|
|
24
|
+
author: 'Ariel K.',
|
|
25
|
+
profilePicture: 'ariel-k-profile-pic.png'
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
link: 'https://maps.app.goo.gl/FZJndQGPmfqHCRfb8',
|
|
29
|
+
review: "<b>Pickup at our hotel in Lake Louise was on time for sunrise</b>. Jess was a great guide and made sure we were taken care of. Hot chocolate and blankets were a nice addition, especially when it was 36 degrees F. She checked on us at each location and made sure we had the perfect pictures taken at Moraine Lake and Lake Louise. She answered all our questions and we were able to get a picture of a bear on the side of the road.",
|
|
30
|
+
author: 'Lori S.',
|
|
31
|
+
profilePicture: 'lori-s-profile-pic.png'
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
link: 'https://maps.app.goo.gl/hNmCNEj7pd9kxmEv6',
|
|
35
|
+
review: 'What an incredible experience watching the <b>sunrise at Moraine Lake and a stop off at Lake Louise!</b> The Via Via team were all so helpful; from the smooth process of booking on, to our informative guide Peter. The early morning was worth it, and made a little easier thanks to a complimentary coffee! With there being so many options for a Moraine Lake shuttle, I couldn’t recommend Via Via enough.',
|
|
36
|
+
author: 'Jack P.',
|
|
37
|
+
profilePicture: 'jack-p-profile-pic.png'
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
link: 'https://maps.app.goo.gl/3gX9WaQZUqU8KTeLA',
|
|
41
|
+
review: 'I had an amazing experience taking the <b>Via Via shuttle to both Moraine Lake and Lake Louise!</b> The service was smooth, punctual, and incredibly convenient. Special shoutout to our drivers, Kathy and Kai! They were both so friendly, professional, and informative throughout the trip. Kathy made the early morning ride feel warm and welcoming, and Kai was equally kind and made the return trip just as enjoyable. Highly recommend Via Via for anyone looking to visit the lakes stress-free!',
|
|
42
|
+
author: 'Andrew M.',
|
|
43
|
+
profilePicture: 'maarten-stenvert-profile-pic.png'
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
link: 'https://maps.app.goo.gl/E2SdLpfPzeSPuHu68',
|
|
47
|
+
review: "<b>Moraine lake sunrise shuttle was awesome!</b> We had so much fun. It was raining but Carrie had us covered. Hot chocolate, coffee, blankets and umbrellas! She was so nice in telling us where to go and how to get around. Then we went to Lake Louise, and saw people jumping in the water and enjoying the views. We left at 3:30AM from Canmore and got back around 10:00AM.",
|
|
48
|
+
author: 'Sadie W.',
|
|
49
|
+
profilePicture: 'sadie-w-profile-pic.png'
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
link: 'https://maps.app.goo.gl/V89aFZZ4hRVQbHM79',
|
|
53
|
+
review: 'Had such a great experience with Grace and Via Via. I highly recommend using them and their <b>sunrise tour to Lake Moraine</b>.',
|
|
54
|
+
author: 'Aubry G.',
|
|
55
|
+
profilePicture: 'aubry-g-profile-pic.png'
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
link: 'https://maps.app.goo.gl/zr1KoongPhv6CTKV7',
|
|
59
|
+
review: "Our trip to <b>Lake Louise and Moraine Lake was wonderful and worry free</b>. Nathan took care of everything and was very informative along the way. The van was very comfortable and we enjoyed the intimacy of a small group. We highly recommend Via Via Moraine Lake Shuttle!!!! Paul and Pam from Trabuco Canyon, CA USA",
|
|
60
|
+
author: 'Pam M.',
|
|
61
|
+
profilePicture: 'pam-m-profile-pic.png'
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
link: 'https://maps.app.goo.gl/nwrP6bFHrH8MYEqW7',
|
|
65
|
+
review: "We did the <b>sunrise tour with extended stay at Lake Louise</b>. Everything was super well organized. Sure, it costs more than the Parks Canada shuttle, but you don’t have to worry about a thing – totally worth it. You get plenty of time at Moraine Lake to catch the sunrise, and the blankets and hot drinks are great for the cold. With the extended tour, we had more than enough time to do the Beehive hike. We'd book with Via Via again in a heartbeat – everything went smoothly and everyone was really friendly.",
|
|
66
|
+
author: 'Laura W.',
|
|
67
|
+
profilePicture: 'laura-w-profile-pic.png'
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
link: 'https://maps.app.goo.gl/cBs15LtRXkhbKbDe9',
|
|
71
|
+
review: 'Via Via is a fantastic tour company - I went on their <b>Emerald Lake Escape: Waterfalls & Canyon Wonders Tour yesterday and had the best time</b>! The locations were stunning and the bus was very comfortable. Our leader Léo was kind, personable, professional and a great driver - I was very happy with the service he and his colleagues provided throughout the day.',
|
|
72
|
+
author: 'Nichole V.',
|
|
73
|
+
profilePicture: 'nichole-v-profile-pic.png'
|
|
74
|
+
}
|
|
75
|
+
]
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
import { IMAGES } from './images';
|
|
2
|
+
|
|
3
|
+
export interface StaffMember {
|
|
4
|
+
name: string;
|
|
5
|
+
origin: string;
|
|
6
|
+
languages: string;
|
|
7
|
+
funFact: string;
|
|
8
|
+
tipLink: string;
|
|
9
|
+
profilePhoto: typeof IMAGES[keyof typeof IMAGES];
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export const STAFF_MEMBERS: StaffMember[] = [
|
|
13
|
+
{
|
|
14
|
+
name: 'Léo',
|
|
15
|
+
origin: 'Normandie, France',
|
|
16
|
+
languages: 'EN, FR',
|
|
17
|
+
funFact: 'You’ll most often find Léo running further and faster than anyone you’ve ever met! He’s never faced a challenge he couldn’t overcome, and he’s got more energy than 3 average people combined🏃♂️',
|
|
18
|
+
tipLink: 'https://buy.stripe.com/14A3cvaSscRy5kY9DicjS05',
|
|
19
|
+
profilePhoto: IMAGES.STAFF_LEO
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
name: 'Jess',
|
|
23
|
+
origin: 'St. Catharines, Ontario',
|
|
24
|
+
languages: 'EN, FR',
|
|
25
|
+
funFact: 'Looking for adventure around every corner, Jess loves meeting new people and making memories all over the world! She’s worked as a tour guide most of her life, loves hiking every chance she gets, and finds some interesting tidbit of history wherever she finds herself 🌍',
|
|
26
|
+
tipLink: 'https://buy.stripe.com/cNicN5aSs04M00E3eUcjS06',
|
|
27
|
+
profilePhoto: IMAGES.STAFF_JESS
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'Marie',
|
|
31
|
+
origin: 'France',
|
|
32
|
+
languages: 'FR, EN, ES',
|
|
33
|
+
funFact: 'When’s she’s not cruising through the Rockies, Marie is out running, hiking, cycling, skiing… or trying to decide which one to do first! She’s always happy to share her love for the Rockies, with a very French touch🇫🇷',
|
|
34
|
+
tipLink: 'https://buy.stripe.com/eVqdR98Kk9FmaFig1GcjS07',
|
|
35
|
+
profilePhoto: IMAGES.STAFF_MARIE
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'Mike',
|
|
39
|
+
origin: 'Canmore',
|
|
40
|
+
languages: 'EN, ES',
|
|
41
|
+
funFact: 'Our photographer-extraordinaire, Mike is usually found hiking, running, and exploring every corner of the Bow Valley every chance he gets📸',
|
|
42
|
+
tipLink: 'https://buy.stripe.com/00w5kD3q07xe28Mg1GcjS08',
|
|
43
|
+
profilePhoto: IMAGES.STAFF_MIKE
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'Kai',
|
|
47
|
+
origin: 'Canmore',
|
|
48
|
+
languages: 'EN, ES',
|
|
49
|
+
funFact: 'Born in Canada, raised between cultures. The “CheXiCan” has a wild soul who once ran 4,654 km barefoot from Montreal to Southern Mexico. He lives for epic experiences and sharing them with good people — and he’s always down to swap stories on the road💪',
|
|
50
|
+
tipLink: 'https://buy.stripe.com/eVq9ATd0A4l27t66r6cjS09',
|
|
51
|
+
profilePhoto: IMAGES.STAFF_KAI
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'Gonzalo',
|
|
55
|
+
origin: 'Chile',
|
|
56
|
+
languages: 'EN, ES',
|
|
57
|
+
funFact: 'Born in Chile, seasoned by travels across multiple countries, and now a local in Canmore, Gonzalo brings a world of adventure to every shuttle ride. From towering peaks of the Andes to the turquoise lakes of Banff, his journey has taken him through remote mountain trails, lively food markets, and hidden villages around the world🏔️',
|
|
58
|
+
tipLink: 'https://buy.stripe.com/28EcN53q0dVCcNq02IcjS0a',
|
|
59
|
+
profilePhoto: IMAGES.STAFF_GONZALO
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: 'Mathieu',
|
|
63
|
+
origin: 'Calgary',
|
|
64
|
+
languages: 'EN, FR',
|
|
65
|
+
funFact: 'When he’s not cycling dozens of kilometres for fun, Matt can usually be found hiking, reading, and enjoying every challenge the Rockies present to him! In the winter, he works as a ski and snowboard instructor🚴♂️',
|
|
66
|
+
tipLink: 'https://buy.stripe.com/7sYbJ1d0A3gYbJm02IcjS02',
|
|
67
|
+
profilePhoto: IMAGES.STAFF_MATHIEU
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: 'Grace',
|
|
71
|
+
origin: 'United Kingdom',
|
|
72
|
+
languages: 'EN',
|
|
73
|
+
funFact: 'Originally from England, Grace fell in love with the Rockies and has called the Bow Valley home for the past 6 years. She loves to be outdoors, going to music concerts, and competing in CrossFit competitions💪',
|
|
74
|
+
tipLink: 'https://buy.stripe.com/9B6aEXd0A18QcNq3eUcjS01',
|
|
75
|
+
profilePhoto: IMAGES.STAFF_GRACE
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: 'Kieran',
|
|
79
|
+
origin: 'Sydney, Australia',
|
|
80
|
+
languages: 'EN',
|
|
81
|
+
funFact: 'Just another fun-loving Aussie making memories in the beautiful Canadian Rockies. After spending the winter non-stop on the slopes, Kieran has been keen on summer hiking, climbing, camping, and kayaking. He also completed the Banff Four Peaks Challenge this summer (legendary!!) 🧗',
|
|
82
|
+
tipLink: 'https://buy.stripe.com/bJe28r2lW5p66p202IcjS03',
|
|
83
|
+
profilePhoto: IMAGES.STAFF_KIERAN
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
name: 'Victor',
|
|
87
|
+
origin: 'Barcelona, Spain',
|
|
88
|
+
languages: 'EN, ES, CAT',
|
|
89
|
+
funFact: 'Originally from Spain, Victor has been travelling the world for the last 6 years, and fell in love with the ocean and mountains while living in Australia and New Zealand. He now lives in the Bow Valley, where he hikes, climbs, and rocks out at music festivals✌️',
|
|
90
|
+
tipLink: 'https://buy.stripe.com/eVqaEX5y8eZG9Be5n2cjS04',
|
|
91
|
+
profilePhoto: IMAGES.STAFF_VICTOR
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
name: 'Jake',
|
|
95
|
+
origin: 'Canada',
|
|
96
|
+
languages: 'EN, FR',
|
|
97
|
+
funFact: 'Originally from Oakville, Ontario, Jake moved to the Bow Valley to pursue a career in ski instructing. Nine years later, he is now teaching at all three world-class Banff ski resorts, and training new instructors each winter. In summer, you can find him hiking mountains, climbing rocky cliffs, and camping in the beautiful backcountry of the Rocky Mountains🎿',
|
|
98
|
+
tipLink: 'https://buy.stripe.com/6oU4gz5y85p67t6dTycjS0b',
|
|
99
|
+
profilePhoto: IMAGES.STAFF_JAKE
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
name: 'Carrie',
|
|
103
|
+
origin: 'Taiwan',
|
|
104
|
+
languages: 'EN, ZH, JA, MIN',
|
|
105
|
+
funFact: "5ft0 Taiwanese-snowboarding-addict turned mountain explorer! After five years chasing legendary powder in Japan, she’s landed in the Canadian Rockies. She’s traded in deep snow and sushi for alpine trails, campfires, and climbing routes (until snowboard season returns, of course!)🏂",
|
|
106
|
+
tipLink: 'https://buy.stripe.com/eVqdR9gcM3gYbJmeXCcjS0e',
|
|
107
|
+
profilePhoto: IMAGES.STAFF_CARRIE
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
name: 'Clém',
|
|
111
|
+
origin: 'France',
|
|
112
|
+
languages: 'FR, EN',
|
|
113
|
+
funFact: 'A French gal tackling the outdoors like no one else! Clém is a wealth of knowledge when it comes to the wildlife, trails, and history of the Rockies, and she can usually be found running, climbing, and hiking🧗♀️',
|
|
114
|
+
tipLink: 'https://buy.stripe.com/6oU5kDe4E3gY6p2g1GcjS0f',
|
|
115
|
+
profilePhoto: IMAGES.STAFF_CLEMENCE
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
name: 'Pieter',
|
|
119
|
+
origin: 'Netherlands',
|
|
120
|
+
languages: 'EN, NL',
|
|
121
|
+
funFact: 'Originally from the Netherlands, but has been chasing snow and mountains since 2013. Pieter loves snowboarding (and teaching it too!), painting beautiful landscapes and playing guitar in punk & metal bands🤙',
|
|
122
|
+
tipLink: 'https://buy.stripe.com/fZu3cv8KkeZG00EbLqcjS0g',
|
|
123
|
+
profilePhoto: IMAGES.STAFF_PIETER
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
name: 'Bec',
|
|
127
|
+
origin: 'Australia',
|
|
128
|
+
languages: 'EN',
|
|
129
|
+
funFact: 'Another Aussie with quite the backstory! Bec grew up on a farm and started driving at the age of 8! She’s been travelling since she can remember, caravaning around Australia with her family, cultural exchanges to Italy and Austria, and now the Canadian Rockies! What she loves most about living in the mountains? The same place never looks the same twice🏔️',
|
|
130
|
+
tipLink: 'https://buy.stripe.com/cNi14n1hS5p6fZC4iYcjS0k',
|
|
131
|
+
profilePhoto: IMAGES.STAFF_REBECCA
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
name: 'Haleigh',
|
|
135
|
+
origin: 'San Clemente, California',
|
|
136
|
+
languages: 'EN, ES',
|
|
137
|
+
funFact: 'A full-time traveller for the past 3 years, Haleigh is originally from San Diego, California. Having moved to the Rockies for a year of skiing, hiking, and camping, she’s planning the next leg of her nomadic life as we speak🗺️',
|
|
138
|
+
tipLink: 'https://buy.stripe.com/9B63cv6Cc6ta3cQaHmcjS0l',
|
|
139
|
+
profilePhoto: IMAGES.STAFF_HALEIGH
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
name: 'Vishal',
|
|
143
|
+
origin: 'India',
|
|
144
|
+
languages: 'EN, HI, PA',
|
|
145
|
+
funFact: 'Bringing a happiness and a warm smile to each shuttle he drives, Vishal can also be found working as a professional baker (lucky us!) on his days off from Via Via. Having lived in the Bow Valley many years, we’re so lucky to have his experience on our team🥐',
|
|
146
|
+
tipLink: 'https://buy.stripe.com/dRm3cv2lW04M14IdTycjS0j',
|
|
147
|
+
profilePhoto: IMAGES.STAFF_VISHAL
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: 'Charlie',
|
|
151
|
+
origin: 'United Kingdom',
|
|
152
|
+
languages: 'EN',
|
|
153
|
+
funFact: 'A world-travelling Brit with a background in TV! Charlie has lived in the UK, Australia, New Zealand, Whistler (BC), and Banff (AB). A lover of hiking, camping and all things outdoor, he’s putting off moving back home for as long as possible. Charlie has set the record for most bears seen on tour with a whopping number 7🐻',
|
|
154
|
+
tipLink: 'https://buy.stripe.com/8x27sLd0A8Bi28McPucjS0m',
|
|
155
|
+
profilePhoto: IMAGES.STAFF_CHARLIE
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
name: 'Ron',
|
|
159
|
+
origin: 'Hong Kong',
|
|
160
|
+
languages: 'EN, CN, YUE',
|
|
161
|
+
funFact: 'Loves doing things that he is passionate about. Ron has completed over 100 hikes in the Canadian Rockies. As for the winter time, he can always be found chasing powder and exploring new terrains 🏆',
|
|
162
|
+
tipLink: 'https://buy.stripe.com/5kQaEXf8I2cU7t6cPucjS0c',
|
|
163
|
+
profilePhoto: IMAGES.STAFF_RON
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
name: 'Kathy',
|
|
167
|
+
origin: 'Taiwan',
|
|
168
|
+
languages: 'EN, ZH',
|
|
169
|
+
funFact: 'A Taiwanese girl who loves exploring the world! Kathy has travelled to more than 25 countries and has been living in the Bow Valley for 5 years✈️',
|
|
170
|
+
tipLink: 'https://buy.stripe.com/28E8wPf8IcRy14Ig1GcjS0d',
|
|
171
|
+
profilePhoto: IMAGES.STAFF_KATHY
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
name: 'Kent',
|
|
175
|
+
origin: 'Windsor, Ontario',
|
|
176
|
+
languages: 'EN',
|
|
177
|
+
funFact: "Originally from Windsor, Ontario, Kent moved to the Rockies in 2019 and hasn’t turned back since! On his days off, he can be found exploring the mountains by hiking, camping, and taking stunning photos of the incredible landscapes⛺️",
|
|
178
|
+
tipLink: 'https://buy.stripe.com/4gMeVdgcMg3KaFicPucjS0h',
|
|
179
|
+
profilePhoto: IMAGES.STAFF_KENT
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
name: 'Nathan',
|
|
183
|
+
origin: 'Antwerp, Belgium',
|
|
184
|
+
languages: 'EN, FR, NL',
|
|
185
|
+
funFact: 'Meet Nathan — founder, adventurer, and the heart behind Via Via. Originally from Belgium, he followed his dream and the snow to the Canadian Rockies five years ago, fell in love, and never looked back. After years of exploring the mountains and seeing how hard it had become for visitors to access the area’s most iconic spots, he started Via Via to make the magic of the Rockies more accessible, more sustainable, and more unforgettable for everyone.',
|
|
186
|
+
tipLink: 'https://buy.stripe.com/cNi4gz5y89Fm7t62aQcjS00',
|
|
187
|
+
profilePhoto: IMAGES.STAFF_NATHAN
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
name: 'Jenna',
|
|
191
|
+
origin: 'Ontario, Canada',
|
|
192
|
+
languages: 'EN',
|
|
193
|
+
funFact: 'Originally from Kitchener-Waterloo, Jenna came to Banff for a ski season and discovered not only a love for the mountains but a shared vision with Nathan. As co-founder of Via Via, she draws on her background in software engineering to lead all things tech and operations — from developing internal systems to streamlining guest communications — ensuring the entire experience runs smoothly from behind the scenes.',
|
|
194
|
+
tipLink: '',
|
|
195
|
+
profilePhoto: IMAGES.STAFF_JENNA
|
|
196
|
+
},
|
|
197
|
+
];
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import blanketAnimation from '@/assets/icons/blanket.json';
|
|
2
|
+
import coffeeAnimation from '@/assets/icons/coffee-break.json';
|
|
3
|
+
import customerAnimation from '@/assets/icons/customer.json';
|
|
4
|
+
import driverAnimation from '@/assets/icons/driver.json';
|
|
5
|
+
import morningAnimation from '@/assets/icons/morning.json';
|
|
6
|
+
import soloAnimation from '@/assets/icons/solo-traveller.json';
|
|
7
|
+
import directAccessAnimation from '@/assets/icons/road-marking.json';
|
|
8
|
+
import avoidPaidParkingAnimation from '@/assets/icons/parking.json';
|
|
9
|
+
import flexibleCancellationAnimation from '@/assets/icons/calendar.json';
|
|
10
|
+
import multipleLocationsAnimation from '@/assets/icons/route.json';
|
|
11
|
+
import noParkingStrugglesAnimation from '@/assets/icons/no-parking.json';
|
|
12
|
+
import threeFriendsAnimation from '@/assets/icons/three-friends.json';
|
|
13
|
+
import mapAnimation from '@/assets/icons/map.json';
|
|
14
|
+
|
|
15
|
+
export enum VALUE_PROPS_KEYS {
|
|
16
|
+
SMALL_GROUPS = 'smallGroups',
|
|
17
|
+
COZY_BLANKETS = 'cozyBlankets',
|
|
18
|
+
HOT_DRINKS = 'hotDrinks',
|
|
19
|
+
PHOTO_TOURS = 'photoTours',
|
|
20
|
+
LOCAL_GUIDES = 'localGuides',
|
|
21
|
+
CONVENIENT_PICKUP = 'convenientPickup',
|
|
22
|
+
DIRECT_ACCESS = 'directAccess',
|
|
23
|
+
AVOID_PAID_PARKING = 'avoidPaidParking',
|
|
24
|
+
FLEXIBLE_CANCELLATION = 'flexibleCancellation',
|
|
25
|
+
MULTIPLE_LOCATIONS = 'multipleLocations',
|
|
26
|
+
NO_PARKING_STRUGGLES = 'noParkingStruggles',
|
|
27
|
+
YOUR_PRIVATE_GROUP = 'yourPrivateGroup',
|
|
28
|
+
CUSTOMIZED_ITINERARY = 'customizedItinerary',
|
|
29
|
+
DOORSTEP_PICKUP = 'doorstepPickup',
|
|
30
|
+
CAPTURE_THE_MOMENT = 'captureTheMoment',
|
|
31
|
+
COZY_COMFORT = 'cozyComfort',
|
|
32
|
+
PERSONAL_GUIDES = 'personalGuides'
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export const animations = {
|
|
36
|
+
smallGroups: customerAnimation,
|
|
37
|
+
cozyBlankets: blanketAnimation,
|
|
38
|
+
hotDrinks: coffeeAnimation,
|
|
39
|
+
photoTours: soloAnimation,
|
|
40
|
+
localGuides: driverAnimation,
|
|
41
|
+
convenientPickup: morningAnimation,
|
|
42
|
+
directAccess: directAccessAnimation,
|
|
43
|
+
avoidPaidParking: avoidPaidParkingAnimation,
|
|
44
|
+
flexibleCancellation: flexibleCancellationAnimation,
|
|
45
|
+
multipleLocations: multipleLocationsAnimation,
|
|
46
|
+
noParkingStruggles: noParkingStrugglesAnimation,
|
|
47
|
+
threeFriends: threeFriendsAnimation,
|
|
48
|
+
map: mapAnimation
|
|
49
|
+
} as const;
|
|
50
|
+
|
|
51
|
+
type AnimationKey = keyof typeof animations;
|
|
52
|
+
|
|
53
|
+
export type ValueProp = {
|
|
54
|
+
key: VALUE_PROPS_KEYS;
|
|
55
|
+
animationKey: AnimationKey;
|
|
56
|
+
title: string;
|
|
57
|
+
description: string;
|
|
58
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"paragraphs": [
|
|
3
|
+
"Looking to create memories with your loved ones in one of the most breathtaking places on earth? Let us help you turn it into an unforgettable experience.",
|
|
4
|
+
"Whether it's a joyful family gathering, a meaningful moment with friends, or a romantic couples shoot, we know how to blend into the moment while capturing it beautifully - candid, natural, and full of connection."
|
|
5
|
+
],
|
|
6
|
+
"sections": [
|
|
7
|
+
{
|
|
8
|
+
"title": "What's included",
|
|
9
|
+
"content": [
|
|
10
|
+
{
|
|
11
|
+
"title": "30-minute session",
|
|
12
|
+
"items": [
|
|
13
|
+
"📸 20 to 25 minutes of photography time",
|
|
14
|
+
"📍 2 Locations within walking distance",
|
|
15
|
+
"🖼️ 25 professionally edited photos delivered in a personalized online gallery"
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"title": "60-minute session",
|
|
20
|
+
"items": [
|
|
21
|
+
"📸 50 to 55 minutes of photography time",
|
|
22
|
+
"📍 2-3 Locations within walking distance",
|
|
23
|
+
"🖼️ 50 professionally edited photos delivered in a personalized online gallery"
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"title": "90-minute session",
|
|
28
|
+
"items": [
|
|
29
|
+
"📸 80-90 mins of Photography Time",
|
|
30
|
+
"📍 5 Locations within walking distance",
|
|
31
|
+
"🖼️ 75 professionally edited photos delivered in a personalized online gallery"
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"title": "Other details",
|
|
36
|
+
"items": [
|
|
37
|
+
"🖥️ Editing: Basic exposure and lighting adjustments + colour corrections",
|
|
38
|
+
"👭🏽 10 People Max per session"
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
]
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"title": "Available add ons",
|
|
45
|
+
"content": [
|
|
46
|
+
"🏃♀️ Express Service - 7 Day turnaround on images - $300",
|
|
47
|
+
"🏃♀️💨 Super Express Service - 48-hour turnaround on images - $900",
|
|
48
|
+
"🔬 Additional Editing: Object Removal / Skin Retouching - $199/item",
|
|
49
|
+
"➕ Additional Images: 15 Additional Images - $99",
|
|
50
|
+
"♾️ The Works - Get ALL additional images taken on the day - $199"
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"title": "Exclusions",
|
|
55
|
+
"content": [
|
|
56
|
+
"💵 Tips or Gratuities",
|
|
57
|
+
"🅿️ Parking Fees"
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"paragraphs": [
|
|
3
|
+
"Planning to elope in one of the most breathtaking places on earth? Let us help you make it truly unforgettable. We know how to blend into the moment while capturing the joy of an intimate celebration beautifully."
|
|
4
|
+
],
|
|
5
|
+
"sections": [
|
|
6
|
+
{
|
|
7
|
+
"title": "What's included",
|
|
8
|
+
"content": [
|
|
9
|
+
{
|
|
10
|
+
"title": "30-minute session",
|
|
11
|
+
"items": [
|
|
12
|
+
"📸 20 to 25 minutes of photography time",
|
|
13
|
+
"📍 2 Locations within walking distance",
|
|
14
|
+
"🖼️ 25 professionally edited photos delivered in a personalized online gallery"
|
|
15
|
+
]
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"title": "60-minute session",
|
|
19
|
+
"items": [
|
|
20
|
+
"📸 50 to 55 minutes of photography time",
|
|
21
|
+
"📍 2-3 Locations within walking distance",
|
|
22
|
+
"🖼️ 50 professionally edited photos delivered in a personalized online gallery"
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"title": "90-minute session",
|
|
27
|
+
"items": [
|
|
28
|
+
"📸 80-90 mins of Photography Time",
|
|
29
|
+
"📍 5 Locations within walking distance",
|
|
30
|
+
"🖼️ 75 professionally edited photos delivered in a personalized online gallery"
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"title": "Other details",
|
|
35
|
+
"items": [
|
|
36
|
+
"🖥️ Editing: Basic exposure and lighting adjustments + colour corrections",
|
|
37
|
+
"👭🏽 2 People Max per session"
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"title": "Available add ons",
|
|
44
|
+
"content": [
|
|
45
|
+
"🏃♀️ Express Service - 7 Day turnaround on images - $300",
|
|
46
|
+
"🏃♀️💨 Super Express Service - 48-hour turnaround on images - $900",
|
|
47
|
+
"🔬 Additional Editing: Object Removal / Skin Retouching - $199/item",
|
|
48
|
+
"➕ Additional Images: 15 Additional Images - $99",
|
|
49
|
+
"♾️ The Works - Get ALL additional images taken on the day - $199"
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"title": "Exclusions",
|
|
54
|
+
"content": [
|
|
55
|
+
"💵 Tips or Gratuities",
|
|
56
|
+
"🅿️ Parking Fees"
|
|
57
|
+
]
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"paragraphs": [
|
|
3
|
+
"Planning to propose in one of the most breathtaking places on earth? Let us help you make it truly unforgettable. We know how to blend into the moment while capturing the joy of an intimate celebration beautifully."
|
|
4
|
+
],
|
|
5
|
+
"sections": [
|
|
6
|
+
{
|
|
7
|
+
"title": "What's included",
|
|
8
|
+
"content": [
|
|
9
|
+
{
|
|
10
|
+
"title": "30-minute session",
|
|
11
|
+
"items": [
|
|
12
|
+
"📸 20 to 25 minutes of photography time",
|
|
13
|
+
"📍 2 Locations within walking distance",
|
|
14
|
+
"🖼️ 25 professionally edited photos delivered in a personalized online gallery"
|
|
15
|
+
]
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"title": "60-minute session",
|
|
19
|
+
"items": [
|
|
20
|
+
"📸 50 to 55 minutes of photography time",
|
|
21
|
+
"📍 2-3 Locations within walking distance",
|
|
22
|
+
"🖼️ 50 professionally edited photos delivered in a personalized online gallery"
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"title": "90-minute session",
|
|
27
|
+
"items": [
|
|
28
|
+
"📸 80-90 mins of Photography Time",
|
|
29
|
+
"📍 5 Locations within walking distance",
|
|
30
|
+
"🖼️ 75 professionally edited photos delivered in a personalized online gallery"
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"title": "Other details",
|
|
35
|
+
"items": [
|
|
36
|
+
"🖥️ Editing: Basic exposure and lighting adjustments + colour corrections",
|
|
37
|
+
"👭🏽 2 People Max per session"
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"title": "Available add ons",
|
|
44
|
+
"content": [
|
|
45
|
+
"🏃♀️ Express Service - 7 Day turnaround on images - $300",
|
|
46
|
+
"🏃♀️💨 Super Express Service - 48-hour turnaround on images - $900",
|
|
47
|
+
"🔬 Additional Editing: Object Removal / Skin Retouching - $199/item",
|
|
48
|
+
"➕ Additional Images: 15 Additional Images - $99",
|
|
49
|
+
"♾️ The Works - Get ALL additional images taken on the day - $199"
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"title": "Exclusions",
|
|
54
|
+
"content": [
|
|
55
|
+
"💵 Tips or Gratuities",
|
|
56
|
+
"🅿️ Parking Fees"
|
|
57
|
+
]
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"shortDescription": "[Replace with short description.]",
|
|
3
|
+
"paragraphs": [
|
|
4
|
+
"[Replace with your full description paragraph 1. Afternoon departure to Moraine Lake and Lake Louise. Describe the relaxed timing—ideal for those who prefer not to wake up early for sunrise.]",
|
|
5
|
+
"[Replace with your full description paragraph 2. Cover the afternoon schedule, pickup locations, and how the tour flows—which lake first, how much time at each.]",
|
|
6
|
+
"[Replace with your full description paragraph 3. Highlight the benefits of an afternoon tour—different light for photography, fewer crowds at certain times, a more leisurely pace.]",
|
|
7
|
+
"[Replace with your full description paragraph 4. Add who this tour suits—late risers, those with morning commitments, or visitors wanting a relaxed day exploring both lakes.]"
|
|
8
|
+
],
|
|
9
|
+
"review": {
|
|
10
|
+
"text": "[Replace with a customer review quote for this tour]",
|
|
11
|
+
"name": "— [Reviewer Name]"
|
|
12
|
+
},
|
|
13
|
+
"sections": [
|
|
14
|
+
{
|
|
15
|
+
"title": "What's included",
|
|
16
|
+
"content": [
|
|
17
|
+
"Afternoon round-trip to both lakes",
|
|
18
|
+
"Guide and park entry",
|
|
19
|
+
"Approximate time at each lake"
|
|
20
|
+
]
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"title": "What to bring",
|
|
24
|
+
"content": [
|
|
25
|
+
"Layers, camera, water, snacks",
|
|
26
|
+
"Comfortable shoes",
|
|
27
|
+
"Sunscreen"
|
|
28
|
+
]
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"title": "Important information",
|
|
32
|
+
"content": "[Replace with key info: afternoon departure time, pickup locations, cancellation policy, return time, etc.]"
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
{
|
|
2
|
+
"shortDescription": "Visit the <b>Big 3 lakes of the Canadian Rockies; Moraine Lake, Lake Louise, and Emerald Lake</b>. On this scenic <b>small-group tour through Banff and Yoho National Park</b>. With <b>pickups in Canmore, Banff, and Lake Louise</b>, relax while our guides handle the driving and logistics. Along the way, we’ll also stop at <b>Natural Bridge</b> and the <b>impressive Takakkaw Falls</b>, giving you the chance to experience the <b>most iconic landscapes</b> of the Rockies <b>in one unforgettable day</b>.",
|
|
3
|
+
"paragraphs": [
|
|
4
|
+
"Visit the <b>3 most iconic lakes of the Canadian Rockies</b> on this scenic small-group tour through Banff and Yoho National Park. <b>Designed for travelers who want to experience the region’s most famous landscapes in a single unforgettable day</b>, this tour takes you to <b>Moraine Lake, Lake Louise, and Emerald Lake</b>, along with several spectacular stops along the way.",
|
|
5
|
+
"Your day begins with <b>convenient pickups in Canmore, Banff, or Lake Louise</b>. Sit back and relax while our local guides handle the driving and logistics, allowing you to enjoy the scenic journey through the mountains. Along the way, our guides will share stories about the region’s wildlife, geology, and history while pointing out some of the most beautiful viewpoints in the Rockies.",
|
|
6
|
+
"You’ll visit three of the most breathtaking lakes in the Canadian Rockies. Experience the world-famous turquoise waters of <b>Moraine Lake</b>, take in the iconic setting of <b>Lake Louise</b>, and discover the vibrant colors of <b>Emerald Lake</b> in Yoho National Park. At Emerald Lake, you’ll enjoy <b>exclusive access to the Emerald Lake Lodge</b>, located on the <b>“island in the Rockies”</b>, a quieter area of the lake with incredible views of the surrounding peaks. Guests also have the option to <b>purchase lunch packages from Emerald Lake Lodge</b>, making it easy to enjoy a meal while taking in the scenery.",
|
|
7
|
+
"Along the way, we’ll also stop at several remarkable natural landmarks. See the powerful cascade of <b>Takakkaw Falls, one of the tallest waterfalls in Canada</b>, and visit the unique rock formations of <b>Natural Bridge</b>, carved by the <b>rushing waters of the Kicking Horse River</b>.",
|
|
8
|
+
"To make the day even more enjoyable, we provide <b>hot drinks including locally roasted coffee, tea, and hot chocolate</b>, as well as water to refill your bottle and small trail snacks during the tour.",
|
|
9
|
+
"With <b>comfortable transportation, knowledgeable local guides, and visits to some of the most spectacular locations in Banff and Yoho National Park</b>, this tour offers a relaxed and memorable way to experience the very best of the Canadian Rockies in one incredible day."
|
|
10
|
+
],
|
|
11
|
+
"review": {
|
|
12
|
+
"text": "Via Via is a fantastic tour company - I went on their Emerald Lake Escape tour yesterday and had the best time! The locations were stunning and the bus was very comfortable. Our leader Léo was kind, personable, professional and a great driver – I was very happy with the service he and his colleagues provided throughout the day.",
|
|
13
|
+
"name": "— Nichole V."
|
|
14
|
+
},
|
|
15
|
+
"sections": [
|
|
16
|
+
{
|
|
17
|
+
"title": "What's included",
|
|
18
|
+
"content": [
|
|
19
|
+
"• Convenient pickup directly at your door in Canmore, Harvie Heights, Banff and Lake Louise 🏨 ",
|
|
20
|
+
"• Experienced local guides with tips and knowledge on the best photo spots, hikes, and view spots 🏔️ ",
|
|
21
|
+
"• Brand new comfortable & luxury shuttles 🚐 ",
|
|
22
|
+
"• Trailsnacks 🍫",
|
|
23
|
+
"• Water to refills - bring your water bottle 💧",
|
|
24
|
+
"• Phone chargers 🔋 ",
|
|
25
|
+
"• Moraine Lake Access Fee 🏞️",
|
|
26
|
+
"• Banff National Park Pass 🏞️",
|
|
27
|
+
"• Yoho National Park Pass 🏞️"
|
|
28
|
+
]
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"title": "Tour highlights",
|
|
32
|
+
"content": [
|
|
33
|
+
"• Visit the Big 3 lakes of the Canadian Rockies in one unforgettable day.",
|
|
34
|
+
"• Experience Moraine Lake, Lake Louise, and Emerald Lake on one scenic tour.",
|
|
35
|
+
"• Stop at the powerful Takakkaw Falls and the unique rock formations of Natural Bridge.",
|
|
36
|
+
"• Exclusive access to the peaceful Emerald Lake Island for incredible views and photos.",
|
|
37
|
+
"• Enjoy hot drinks, trail snacks, and water refills throughout the day.",
|
|
38
|
+
"• Relax on a scenic drive through Banff and Yoho National Park while our guides handle the logistics.",
|
|
39
|
+
"• Learn about the area’s wildlife, history, and hidden gems from our knowledgeable local guides."
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"title": "Additional information",
|
|
44
|
+
"content": [
|
|
45
|
+
"<strong>What to bring:</strong>",
|
|
46
|
+
"Even in the summer, temperatures and weather conditions can change quickly in the mountains and can be below freezing temperatures around sunrise.",
|
|
47
|
+
"✅ Make sure to bring enough layers, sunrise in the mountains can still be pretty chilly!",
|
|
48
|
+
"✅ Bring a beanie and gloves to keep you cozy and comfortable",
|
|
49
|
+
"✅ Bring water and snacks to stay energized throughout the day",
|
|
50
|
+
"✅ Be prepared for quick weather changes in the mountains",
|
|
51
|
+
"✅ Check the current weather conditions via the link in your booking confirmation email before departure!",
|
|
52
|
+
"<strong>Special requirements:</strong>",
|
|
53
|
+
"Children's safety seats are available for children aged 2 and up or weighing 40lbs (18kg) or more.",
|
|
54
|
+
"If your child is <strong>younger than 2</strong> or weighs <strong>less than 40lbs</strong>, a rear-facing safety seat is required, and <strong>customers must bring their own</strong>.",
|
|
55
|
+
"Please inform us in advance if you need a children's safety seat or if you will be bringing your own. The children's safety seat can stay in the shuttle during your lake visit.",
|
|
56
|
+
"<strong>Restrictions:</strong>",
|
|
57
|
+
"Small pets are welcome if they can fit in a carry-on cage on your lap.",
|
|
58
|
+
"Service animals of all sizes are allowed - <strong>please contact us beforehand if you're bringing a service animal</strong>.",
|
|
59
|
+
"<strong>Cancellations:</strong>",
|
|
60
|
+
"We offer standard, flexible, and premium cancellation policies.",
|
|
61
|
+
"<strong>Standard Cancellation:</strong> Guests can cancel their booking up to <strong>7 days prior to their trip</strong> for a <strong>full refund</strong>, cancel up to <strong>72 hours before departure</strong> for a <strong>50% refund</strong>.",
|
|
62
|
+
"<strong>Flexible Cancellation:</strong> Guests can cancel their booking up to <strong>7 days prior to their trip</strong> for a <strong>full refund</strong>, cancel up to <strong>24 hours before departure</strong> for a <strong>75% refund</strong>.",
|
|
63
|
+
"<strong>Premium Cancellation:</strong> Guests can cancel their booking up to <strong>12 hours before departure</strong> for a <strong>full refund</strong>.",
|
|
64
|
+
"Additionally, all guests may make changes to their booking date and time up to <strong>72 hours in advance of their trip</strong> (subject to availability). To cancel your booking, please contact us directly."
|
|
65
|
+
]
|
|
66
|
+
}
|
|
67
|
+
]
|
|
68
|
+
}
|