From ab88ac49eb06eceaff88abceb3550039e48c5511 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 12:00:27 -0700 Subject: [PATCH 01/34] fix(core-utils): add walk speed to query --- packages/core-utils/src/planQuery.graphql | 22 ++++++++++++---------- packages/core-utils/src/query-gen.ts | 2 ++ 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/packages/core-utils/src/planQuery.graphql b/packages/core-utils/src/planQuery.graphql index 7105e362d..2dabc5726 100644 --- a/packages/core-utils/src/planQuery.graphql +++ b/packages/core-utils/src/planQuery.graphql @@ -1,18 +1,19 @@ query Plan( - $fromPlace: String! - $toPlace: String! - $modes: [TransportMode] - $time: String - $date: String - $wheelchair: Boolean + $arriveBy: Boolean + $banned: InputBanned $bikeReluctance: Float $carReluctance: Float - $walkReluctance: Float - $arriveBy: Boolean + $date: String + $fromPlace: String! + $modes: [TransportMode] + $numItineraries: Int $preferred: InputPreferred + $time: String + $toPlace: String! $unpreferred: InputUnpreferred - $banned: InputBanned - $numItineraries: Int + $walkReluctance: Float + $walkSpeed: Float + $wheelchair: Boolean ) { plan( arriveBy: $arriveBy @@ -30,6 +31,7 @@ query Plan( transportModes: $modes unpreferred: $unpreferred walkReluctance: $walkReluctance + walkSpeed: $walkSpeed wheelchair: $wheelchair ) { itineraries { diff --git a/packages/core-utils/src/query-gen.ts b/packages/core-utils/src/query-gen.ts index 27572b6d6..9877b6899 100644 --- a/packages/core-utils/src/query-gen.ts +++ b/packages/core-utils/src/query-gen.ts @@ -234,6 +234,7 @@ export function generateOtp2Query( const { bikeReluctance, carReluctance, + walkSpeed, walkReluctance, wheelchair } = modeSettingValues; @@ -253,6 +254,7 @@ export function generateOtp2Query( time, toPlace: `${to.name}::${to.lat},${to.lon}}`, walkReluctance, + walkSpeed, wheelchair } }; From a492b1eb63eac84ce6fbf4b6875acb8d4c55f71a Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 12:17:26 -0700 Subject: [PATCH 02/34] chore: update yarn lock --- yarn.lock | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/yarn.lock b/yarn.lock index c095481fa..6593587b4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3241,25 +3241,6 @@ resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-1.0.3.tgz#db9cc719191a62e7d9200f6e7bab21c5b848adca" integrity sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q== -"@opentripplanner/core-utils@^9.0.3": - version "9.0.3" - resolved "https://registry.yarnpkg.com/@opentripplanner/core-utils/-/core-utils-9.0.3.tgz#c1ebdcc3ad5999fb28427102c9be7d7268f6bd37" - integrity sha512-8P3Bi41jF7z18P/soo6lEw+nrqarsyGMAxivsF1/kMJdRo4wnakp0zcrVZjDXTxoR6LPtj6Kkuxv3JQFO9jKiw== - dependencies: - "@conveyal/lonlat" "^1.4.1" - "@mapbox/polyline" "^1.1.0" - "@opentripplanner/geocoder" "^1.4.1" - "@styled-icons/foundation" "^10.34.0" - "@turf/along" "^6.0.1" - bowser "^2.7.0" - chroma-js "^2.4.2" - date-fns "^2.28.0" - date-fns-tz "^1.2.2" - graphql "^16.6.0" - lodash.clonedeep "^4.5.0" - lodash.isequal "^4.5.0" - qs "^6.9.1" - "@opentripplanner/types@6.0.0-alpha.4": version "6.0.0-alpha.4" resolved "https://registry.yarnpkg.com/@opentripplanner/types/-/types-6.0.0-alpha.4.tgz#dee3c06675e30c596159d182ed707e7710cd937c" From c42516469572853ebb38c77e378bf67bcba9e471 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 13:13:04 -0700 Subject: [PATCH 03/34] fix(types): add typeOverride property to modesettingbase --- packages/types/src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 4cca75cae..4554785f4 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -727,6 +727,7 @@ export type ModeSettingBase = { iconName?: string; icon?: JSX.Element; key: string; + typeOverride?: "STRING" | "NUMBER" | "BOOLEAN"; }; export type ModeSetting = ( From 7a016d6d2d7466ce7ebd1686407f675f05e47144 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 13:47:06 -0700 Subject: [PATCH 04/34] fix(trip-form): improve mode setting value coercion function --- packages/trip-form/src/MetroModeSelector/utils.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/packages/trip-form/src/MetroModeSelector/utils.ts b/packages/trip-form/src/MetroModeSelector/utils.ts index 2459e8536..68bde015c 100644 --- a/packages/trip-form/src/MetroModeSelector/utils.ts +++ b/packages/trip-form/src/MetroModeSelector/utils.ts @@ -48,6 +48,19 @@ export function convertModeSettingValue( setting: ModeSetting, value: string | boolean | number ): string | boolean | number { + // Assume the type of the output value based on the type of the default value. + if (setting.default) { + switch (typeof setting.default) { + case "bigint": + case "number": + return Number(value); + case "boolean": + return value === "true" || value === true; + default: + return value; + } + } + // In case no default is provided. switch (setting.type) { case "CHECKBOX": case "SUBMODE": From 2f75000801fba8cd1484495bd53112a718f7325f Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 14:07:52 -0700 Subject: [PATCH 05/34] fix(core-utils): repair crash on unknown mode setting dropdown value --- packages/core-utils/src/query-gen.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core-utils/src/query-gen.ts b/packages/core-utils/src/query-gen.ts index 9877b6899..79dcd7cc3 100644 --- a/packages/core-utils/src/query-gen.ts +++ b/packages/core-utils/src/query-gen.ts @@ -67,7 +67,7 @@ export function extractAdditionalModes( } if (cur.type === "DROPDOWN") { const transportMode = cur.options.find(o => o.value === cur.value) - .addTransportMode; + ?.addTransportMode; if (transportMode) { return [...prev, transportMode]; } From 0e4b683a37b8ff406f2a22f75489f26ac82cfb15 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 14:08:30 -0700 Subject: [PATCH 06/34] fix(core-utils): remove old walkSpeed query-param to reduce interference with new mode selector --- packages/core-utils/src/query-params.js | 25 ------------------------- 1 file changed, 25 deletions(-) diff --git a/packages/core-utils/src/query-params.js b/packages/core-utils/src/query-params.js index 7b342d849..252b94180 100644 --- a/packages/core-utils/src/query-params.js +++ b/packages/core-utils/src/query-params.js @@ -365,31 +365,6 @@ const queryParams = [ } ] }, - - { - /* walkSpeed -- the user's walking speed in m/s */ - name: "walkSpeed", - routingTypes: ["ITINERARY", "PROFILE"], - default: 1.34, - selector: "DROPDOWN", - label: "Walk Speed", - applicable: query => query.mode && query.mode.indexOf("WALK") !== -1, - options: [ - { - text: "2 MPH", - value: 0.89 - }, - { - text: "3 MPH", - value: 1.34 - }, - { - text: "4 MPH", - value: 1.79 - } - ] - }, - { name: "walkReluctance", routingTypes: ["ITINERARY", "PROFILE"], From 9913546bea0fb7f04e26b87e1e0f222ffb067c43 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 14:10:27 -0700 Subject: [PATCH 07/34] Revert "fix(types): add typeOverride property to modesettingbase" This reverts commit c42516469572853ebb38c77e378bf67bcba9e471. --- packages/types/src/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 4554785f4..4cca75cae 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -727,7 +727,6 @@ export type ModeSettingBase = { iconName?: string; icon?: JSX.Element; key: string; - typeOverride?: "STRING" | "NUMBER" | "BOOLEAN"; }; export type ModeSetting = ( From 2333783e9cc4d2ee58448b0f04702cad1cbe9013 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 14:23:25 -0700 Subject: [PATCH 08/34] remove walkSpeed default qp --- packages/core-utils/src/query.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/core-utils/src/query.js b/packages/core-utils/src/query.js index eaf09fcab..80e091bc4 100644 --- a/packages/core-utils/src/query.js +++ b/packages/core-utils/src/query.js @@ -19,7 +19,6 @@ export const defaultParams = [ "maxWalkDistance", "walkReluctance", "maxWalkTime", - "walkSpeed", "maxBikeDistance", "maxBikeTime", "bikeSpeed", From 37173d8701555164a6b083237eb8fe86d0f7009c Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 9 Aug 2023 14:42:00 -0700 Subject: [PATCH 09/34] chore: complete removal of old walkSpeed parameter --- __snapshots__/storybook.test.ts.snap | 489 +----------------- .../__snapshots__/query-params.ts.snap | 25 - .../src/__tests__/__snapshots__/query.js.snap | 8 - .../src/GeneralSettingsPanel/index.tsx | 2 +- .../src/SettingsSelectorPanel.story.tsx | 4 +- 5 files changed, 4 insertions(+), 524 deletions(-) diff --git a/__snapshots__/storybook.test.ts.snap b/__snapshots__/storybook.test.ts.snap index 5e8c4a067..6caf4bff2 100644 --- a/__snapshots__/storybook.test.ts.snap +++ b/__snapshots__/storybook.test.ts.snap @@ -226517,43 +226517,6 @@ exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel 2`] = ` -
-
- -
-
- -
-
@@ -227522,43 +227485,6 @@ exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Custom -
-
- -
-
- -
-
@@ -227808,43 +227734,6 @@ exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefin -
-
- -
-
- -
-
@@ -235725,43 +235614,6 @@ Array [ -
-
- -
-
- -
-
,

@@ -235888,43 +235740,6 @@ Array [ -

-
- -
-
- -
-
, @@ -236053,43 +235868,6 @@ Array [ -
-
- -
-
- -
-
,

@@ -236191,43 +235969,6 @@ Array [ -

-
- -
-
- -
-
, @@ -236274,19 +236015,6 @@ Array [ padding-left: 6px; } -.c4 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c4 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - .c0 > div { -webkit-align-items: center; -webkit-box-align: center; @@ -236313,39 +236041,12 @@ Array [ width: 100%; } -.c5 .c1 { +.c3 .c1 { padding-top: 8px; color: #fff; font-weight: 100; } -.c5 .c3 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c5 .c3 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} -
-
-
- -
-
- -
-
,

@@ -236432,19 +236096,6 @@ Array [ padding-left: 6px; } -.c5 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c5 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - .c1 > div { -webkit-align-items: center; -webkit-box-align: center; @@ -236483,33 +236134,6 @@ Array [ font-weight: 100; } -.c0 .c4 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c0 .c4 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} -

-
-
- -
-
- -
-
, @@ -250564,43 +250151,6 @@ exports[`Storyshots TripOptions Company First Mixed Category 2`] = ` -
-
- -
-
- -
-
-
-
- -
-
- -
-
qp.name === param); // Check that the parameter applies to the specified routingType - if (!paramInfo.routingTypes.includes(query.routingType)) return null; + if (!paramInfo?.routingTypes.includes(query.routingType)) return null; // Check that the applicability test (if provided) is satisfied if ( diff --git a/packages/trip-form/src/SettingsSelectorPanel.story.tsx b/packages/trip-form/src/SettingsSelectorPanel.story.tsx index 58efee238..03b452831 100644 --- a/packages/trip-form/src/SettingsSelectorPanel.story.tsx +++ b/packages/trip-form/src/SettingsSelectorPanel.story.tsx @@ -92,8 +92,8 @@ const SettingsPanelTemplate = (args: StoryArgs, context: StoryContext) => { queryParamMessages={ args.useCustomMessages ? { - walkSpeed: { - label: "Custom walk speed label", + maxWalkDistance: { + label: "Custom max walk distance label", options: [ { text: "3 kph custom speed value", From f4064e6cdafd3b3c9710e61bcd0ca121c43e8a4e Mon Sep 17 00:00:00 2001 From: miles-grant-ibigroup Date: Thu, 10 Aug 2023 13:21:01 -0400 Subject: [PATCH 10/34] refactor: remove unwanted default walk tolerance sliders --- packages/trip-form/modeSettings.yml | 28 +--------------------------- 1 file changed, 1 insertion(+), 27 deletions(-) diff --git a/packages/trip-form/modeSettings.yml b/packages/trip-form/modeSettings.yml index b26adf690..a2c9766cb 100644 --- a/packages/trip-form/modeSettings.yml +++ b/packages/trip-form/modeSettings.yml @@ -1,27 +1 @@ -- applicableMode: CAR - default: 3 - graphQLQueryParam: true - high: 5 - inverseKey: carReluctance - key: carTolerance - low: 0 - step: 0.1 - type: SLIDER -- applicableMode: BICYCLE - default: 2 - graphQLQueryParam: true - high: 5 - inverseKey: bikeReluctance - key: bikeTolerance - low: 0 - step: 0.1 - type: SLIDER -- applicableMode: TRANSIT - default: 2 - graphQLQueryParam: true - high: 5 - inverseKey: walkReluctance - key: walkTolerance - low: 0 - step: 0.1 - type: SLIDER +# Reserved for future use. Supply default mode settings here \ No newline at end of file From 40b839a313ad60830dab2338d13597ab14802c63 Mon Sep 17 00:00:00 2001 From: miles-grant-ibigroup Date: Thu, 10 Aug 2023 13:23:28 -0400 Subject: [PATCH 11/34] test: update snapshots --- __snapshots__/storybook.test.ts.snap | 551 ------------------ .../MetroModeSelector.story.tsx | 4 +- 2 files changed, 1 insertion(+), 554 deletions(-) diff --git a/__snapshots__/storybook.test.ts.snap b/__snapshots__/storybook.test.ts.snap index 6caf4bff2..5fc520284 100644 --- a/__snapshots__/storybook.test.ts.snap +++ b/__snapshots__/storybook.test.ts.snap @@ -237912,557 +237912,6 @@ Array [ ] `; -exports[`Storyshots Trip Form Components/Metro Mode Selector Metro Mode Selector 1`] = ` - - - -`; - -exports[`Storyshots Trip Form Components/Metro Mode Selector Metro Mode Selector 2`] = ` -.c2 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c3 { - display: inline-block; - -webkit-clip: rect(0,0,0,0); - clip: rect(0,0,0,0); - height: 0; - overflow: hidden; - position: absolute; - width: 0; -} - -.c0 { - border: none; - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - gap: 0 3px; - margin: 0 4px 0 0; - padding: 0; -} - -.c0 > legend { - -webkit-clip: rect(0,0,0,0); - clip: rect(0,0,0,0); - height: 0; - overflow: hidden; - position: absolute; - width: 0; -} - -.c1 { - position: relative; -} - -.c1 > label { - background: #fff; - border-radius: 5px; - border: 2px solid #666; - cursor: pointer; - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - padding: 0.75rem 0.75rem; - -webkit-transition: all 250ms cubic-bezier(0.27,0.01,0.38,1.06); - transition: all 250ms cubic-bezier(0.27,0.01,0.38,1.06); - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -webkit-box-pack: center; - -webkit-justify-content: center; - -ms-flex-pack: center; - justify-content: center; - aspect-ratio: 1/1; -} - -.c1:not(:last-of-type) > label { - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} - -.c1:not(:first-of-type) > label { - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.c1 > label:hover { - background: #eee; - border-color: #333; - box-shadow: rgba(0,0,0,0.1) 0 0 20px; -} - -.c1 > input { - -webkit-clip: rect(0,0,0,0); - clip: rect(0,0,0,0); - height: 0; - overflow: hidden; - position: absolute; - width: 0; - left: -20px; - position: absolute; -} - -.c1 > button { - -webkit-clip: rect(0,0,0,0); - clip: rect(0,0,0,0); - height: 0; - overflow: hidden; - position: absolute; - width: 0; - background: none; - border: none; - bottom: 0; - left: 4px; - position: absolute; - right: 4px; -} - -.c1 > button:focus { - -webkit-clip: initial; - clip: initial; - height: initial; - width: initial; -} - -.c1 > input:checked + label { - background: #666; -} - -.c1 > input:checked + label, -.c1 > input:checked ~ button { - color: white; - fill: currentcolor; -} - -.c1 > input:focus + label { - outline: 5px auto blue; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -4px; -} - -.c1 > input:checked + label:hover { - background: #333; -} - -.c1 > label > svg { - color: #666; - display: inline-block; - height: 32px; - margin: auto; - vertical-align: middle; - width: 32px; - fill: currentcolor; -} - -.c1 > input:checked + label > svg { - color: #eee; -} - -
- - Select a transit mode - - - - - - - - - - - - - - - - - - - - - -
-`; - exports[`Storyshots TripDetails Bike Only Itinerary 1`] = ` { switch (iconName) { case "bus": @@ -67,8 +65,8 @@ const defaultModeButtonDefinitions = [ } ]; +// TODO: add more test settings? const modeSettingDefinitionsWithDropdown = [ - ...modeSettingDefinitions, { applicableMode: "TRANSIT", default: "blue", From ca734eb42478b604dfd21c3a298e307763165db5 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Fri, 28 Jul 2023 17:25:28 -0500 Subject: [PATCH 12/34] Initial work on walk reluctance checkbox Co-authored-by: Miles Grant Co-authored-by: Daniel Heppner --- packages/core-utils/src/query-gen.ts | 4 ++++ packages/trip-form/modeSettings.yml | 2 +- packages/types/src/index.ts | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/core-utils/src/query-gen.ts b/packages/core-utils/src/query-gen.ts index 79dcd7cc3..4c82a6980 100644 --- a/packages/core-utils/src/query-gen.ts +++ b/packages/core-utils/src/query-gen.ts @@ -228,6 +228,10 @@ export function generateOtp2Query( prev[cur.inverseKey] = cur.high - cur.value + cur.low; } prev[cur.key] = cur.value; + + if (cur.type === "CHECKBOX" && cur.truthValue) { + prev[cur.key] = cur.value === true ? cur.truthValue : cur.value; + } return prev; }, {}) as ModeSettingValues; diff --git a/packages/trip-form/modeSettings.yml b/packages/trip-form/modeSettings.yml index a2c9766cb..e01a22ca3 100644 --- a/packages/trip-form/modeSettings.yml +++ b/packages/trip-form/modeSettings.yml @@ -1 +1 @@ -# Reserved for future use. Supply default mode settings here \ No newline at end of file +# Reserved for future use. Supply default mode settings here diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 4cca75cae..f39a5bfee 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -711,6 +711,7 @@ export type CheckboxOptions = { default?: boolean; label: string; type: "CHECKBOX"; + truthValue?: boolean | string | number; value?: boolean; }; From aca3889d2a103205352ab31d7461ee864b6fef9c Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Thu, 3 Aug 2023 09:29:16 -0500 Subject: [PATCH 13/34] refactor: set query to null and fix crash Co-authored-by: Daniel Heppner --- packages/core-utils/src/query-gen.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core-utils/src/query-gen.ts b/packages/core-utils/src/query-gen.ts index 4c82a6980..bdb63413e 100644 --- a/packages/core-utils/src/query-gen.ts +++ b/packages/core-utils/src/query-gen.ts @@ -230,7 +230,7 @@ export function generateOtp2Query( prev[cur.key] = cur.value; if (cur.type === "CHECKBOX" && cur.truthValue) { - prev[cur.key] = cur.value === true ? cur.truthValue : cur.value; + prev[cur.key] = cur.value === true ? cur.truthValue : null; } return prev; }, {}) as ModeSettingValues; From d301b4fd4ccb55c2a967489879bcab8223589bbb Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Thu, 3 Aug 2023 18:21:45 -0500 Subject: [PATCH 14/34] feat(trip-form): support config mode subsetting --- packages/trip-form/i18n/en-US.yml | 1 + .../src/MetroModeSelector/SubSettingsPane.tsx | 13 +++++++++++-- .../trip-form/src/MetroModeSelector/index.tsx | 16 +++++++++++++--- packages/types/src/index.ts | 3 +++ 4 files changed, 28 insertions(+), 5 deletions(-) diff --git a/packages/trip-form/i18n/en-US.yml b/packages/trip-form/i18n/en-US.yml index 0629efc53..e5fbe7c67 100644 --- a/packages/trip-form/i18n/en-US.yml +++ b/packages/trip-form/i18n/en-US.yml @@ -25,6 +25,7 @@ otpUi: rail-label: Train subway-label: Subway tram-label: Tram + walkReluctance-label: Avoid Walking? walkTolerance-label: Walking Tolerance walkTolerance-labelHigh: More Walking walkTolerance-labelLow: Less Walking diff --git a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx index 257b58a46..70f65b9b2 100644 --- a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx +++ b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx @@ -145,14 +145,18 @@ const ModeSettingRenderer = ({ interface Props { modeButton: ModeButtonDefinition; onSettingUpdate: (QueryParamChangeEvent) => void; + subsettingOverrides: Array; } export default function SubSettingsPane({ modeButton, - onSettingUpdate + onSettingUpdate, + subsettingOverrides }: Props): ReactElement { const intl = useIntl(); const label = generateModeButtonLabel(modeButton.key, intl, modeButton.label); + const overridesIds = subsettingOverrides?.map(x => x.id); + // Split the mode settings out based on whether they're submodes or not // This is so we can display submodes in a grid at the top const { @@ -160,7 +164,12 @@ export default function SubSettingsPane({ settingsOnlySubmodes } = modeButton.modeSettings.reduce( (accumulator, cur) => { - if (cur.type === "SUBMODE") { + const overrideIndex = overridesIds?.indexOf(cur.id); + + // If there is a setting override in the config, use that setting instead of the default. + if (subsettingOverrides && overrideIndex > -1) { + accumulator.settingsNoSubmodes.push(subsettingOverrides[overrideIndex]); + } else if (cur.type === "SUBMODE") { accumulator.settingsOnlySubmodes.push(cur); } else { accumulator.settingsNoSubmodes.push(cur); diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index f97edabd6..6f1699c32 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -11,7 +11,7 @@ import { useInteractions, useRole } from "@floating-ui/react"; -import { ModeButtonDefinition } from "@opentripplanner/types"; +import { ModeButtonDefinition, ModeSetting } from "@opentripplanner/types"; import { CaretDown } from "@styled-icons/fa-solid/CaretDown"; import { CaretUp } from "@styled-icons/fa-solid/CaretUp"; import React, { ReactElement, useCallback, useRef, useState } from "react"; @@ -193,6 +193,7 @@ interface ModeButtonProps { onPopupKeyboardExpand: (id: string) => void; onSettingsUpdate: (QueryParamChangeEvent) => void; onToggle: () => void; + subsettingOverrides?: Array; } function ModeButton({ @@ -205,7 +206,8 @@ function ModeButton({ onPopupClose, onPopupKeyboardExpand, onSettingsUpdate, - onToggle + onToggle, + subsettingOverrides }: ModeButtonProps) { const intl = useIntl(); @@ -360,6 +362,7 @@ function ModeButton({ @@ -399,6 +402,11 @@ interface Props { * @param key Mode button to be toggled */ onToggleModeButton: (key: string, newState: boolean) => void; + /** + * Array of configurable overrides for mode subsettings. For example, walk reluctance defaults + * to checkmark but slider is also supported. + */ + subsettingOverrides?: Array; } export default function ModeSelector({ @@ -408,7 +416,8 @@ export default function ModeSelector({ label, modeButtons = [], onSettingsUpdate, - onToggleModeButton + onToggleModeButton, + subsettingOverrides }: Props): ReactElement { // State that holds the id of the active mode combination popup that was triggered via keyboard. // It is used to enable/disable hover effects to avoid keyboard focus being stolen @@ -434,6 +443,7 @@ export default function ModeSelector({ onToggle={useCallback(() => { onToggleModeButton(button.key, !button.enabled); }, [button, onToggleModeButton])} + subsettingOverrides={subsettingOverrides} /> ))} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index f39a5bfee..6d49e98ce 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -696,6 +696,7 @@ export type DropdownOptions = { export type SliderOptions = { default?: number; high: number; + id?: string; inverseKey?: string; label: string; labelHigh: string; @@ -709,6 +710,7 @@ export type SliderOptions = { export type CheckboxOptions = { addTransportMode?: TransportMode; default?: boolean; + id?: string; label: string; type: "CHECKBOX"; truthValue?: boolean | string | number; @@ -727,6 +729,7 @@ export type ModeSettingBase = { applicableMode: string; iconName?: string; icon?: JSX.Element; + id?: string; key: string; }; From 18046601905e19208e4f0943de1bc062020776cd Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Fri, 4 Aug 2023 13:51:04 -0500 Subject: [PATCH 15/34] Revert "feat(trip-form): support config mode subsetting" This reverts commit 2801dca569fa3331b5933138d11258cae523dd4c. --- packages/trip-form/i18n/en-US.yml | 1 - .../src/MetroModeSelector/SubSettingsPane.tsx | 13 ++----------- .../trip-form/src/MetroModeSelector/index.tsx | 16 +++------------- packages/types/src/index.ts | 3 --- 4 files changed, 5 insertions(+), 28 deletions(-) diff --git a/packages/trip-form/i18n/en-US.yml b/packages/trip-form/i18n/en-US.yml index e5fbe7c67..0629efc53 100644 --- a/packages/trip-form/i18n/en-US.yml +++ b/packages/trip-form/i18n/en-US.yml @@ -25,7 +25,6 @@ otpUi: rail-label: Train subway-label: Subway tram-label: Tram - walkReluctance-label: Avoid Walking? walkTolerance-label: Walking Tolerance walkTolerance-labelHigh: More Walking walkTolerance-labelLow: Less Walking diff --git a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx index 70f65b9b2..257b58a46 100644 --- a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx +++ b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx @@ -145,18 +145,14 @@ const ModeSettingRenderer = ({ interface Props { modeButton: ModeButtonDefinition; onSettingUpdate: (QueryParamChangeEvent) => void; - subsettingOverrides: Array; } export default function SubSettingsPane({ modeButton, - onSettingUpdate, - subsettingOverrides + onSettingUpdate }: Props): ReactElement { const intl = useIntl(); const label = generateModeButtonLabel(modeButton.key, intl, modeButton.label); - const overridesIds = subsettingOverrides?.map(x => x.id); - // Split the mode settings out based on whether they're submodes or not // This is so we can display submodes in a grid at the top const { @@ -164,12 +160,7 @@ export default function SubSettingsPane({ settingsOnlySubmodes } = modeButton.modeSettings.reduce( (accumulator, cur) => { - const overrideIndex = overridesIds?.indexOf(cur.id); - - // If there is a setting override in the config, use that setting instead of the default. - if (subsettingOverrides && overrideIndex > -1) { - accumulator.settingsNoSubmodes.push(subsettingOverrides[overrideIndex]); - } else if (cur.type === "SUBMODE") { + if (cur.type === "SUBMODE") { accumulator.settingsOnlySubmodes.push(cur); } else { accumulator.settingsNoSubmodes.push(cur); diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index 6f1699c32..f97edabd6 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -11,7 +11,7 @@ import { useInteractions, useRole } from "@floating-ui/react"; -import { ModeButtonDefinition, ModeSetting } from "@opentripplanner/types"; +import { ModeButtonDefinition } from "@opentripplanner/types"; import { CaretDown } from "@styled-icons/fa-solid/CaretDown"; import { CaretUp } from "@styled-icons/fa-solid/CaretUp"; import React, { ReactElement, useCallback, useRef, useState } from "react"; @@ -193,7 +193,6 @@ interface ModeButtonProps { onPopupKeyboardExpand: (id: string) => void; onSettingsUpdate: (QueryParamChangeEvent) => void; onToggle: () => void; - subsettingOverrides?: Array; } function ModeButton({ @@ -206,8 +205,7 @@ function ModeButton({ onPopupClose, onPopupKeyboardExpand, onSettingsUpdate, - onToggle, - subsettingOverrides + onToggle }: ModeButtonProps) { const intl = useIntl(); @@ -362,7 +360,6 @@ function ModeButton({ @@ -402,11 +399,6 @@ interface Props { * @param key Mode button to be toggled */ onToggleModeButton: (key: string, newState: boolean) => void; - /** - * Array of configurable overrides for mode subsettings. For example, walk reluctance defaults - * to checkmark but slider is also supported. - */ - subsettingOverrides?: Array; } export default function ModeSelector({ @@ -416,8 +408,7 @@ export default function ModeSelector({ label, modeButtons = [], onSettingsUpdate, - onToggleModeButton, - subsettingOverrides + onToggleModeButton }: Props): ReactElement { // State that holds the id of the active mode combination popup that was triggered via keyboard. // It is used to enable/disable hover effects to avoid keyboard focus being stolen @@ -443,7 +434,6 @@ export default function ModeSelector({ onToggle={useCallback(() => { onToggleModeButton(button.key, !button.enabled); }, [button, onToggleModeButton])} - subsettingOverrides={subsettingOverrides} /> ))} diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 6d49e98ce..f39a5bfee 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -696,7 +696,6 @@ export type DropdownOptions = { export type SliderOptions = { default?: number; high: number; - id?: string; inverseKey?: string; label: string; labelHigh: string; @@ -710,7 +709,6 @@ export type SliderOptions = { export type CheckboxOptions = { addTransportMode?: TransportMode; default?: boolean; - id?: string; label: string; type: "CHECKBOX"; truthValue?: boolean | string | number; @@ -729,7 +727,6 @@ export type ModeSettingBase = { applicableMode: string; iconName?: string; icon?: JSX.Element; - id?: string; key: string; }; From b1f5282cebb591980ca048e7d9a3271818b863c8 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Fri, 4 Aug 2023 13:53:44 -0500 Subject: [PATCH 16/34] feat(trip-form): support config mode subsetting --- packages/trip-form/i18n/en-US.yml | 1 + .../src/MetroModeSelector/SubSettingsPane.tsx | 13 +++++++++++-- .../trip-form/src/MetroModeSelector/index.tsx | 16 +++++++++++++--- 3 files changed, 25 insertions(+), 5 deletions(-) diff --git a/packages/trip-form/i18n/en-US.yml b/packages/trip-form/i18n/en-US.yml index 0629efc53..e5fbe7c67 100644 --- a/packages/trip-form/i18n/en-US.yml +++ b/packages/trip-form/i18n/en-US.yml @@ -25,6 +25,7 @@ otpUi: rail-label: Train subway-label: Subway tram-label: Tram + walkReluctance-label: Avoid Walking? walkTolerance-label: Walking Tolerance walkTolerance-labelHigh: More Walking walkTolerance-labelLow: Less Walking diff --git a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx index 257b58a46..70f65b9b2 100644 --- a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx +++ b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx @@ -145,14 +145,18 @@ const ModeSettingRenderer = ({ interface Props { modeButton: ModeButtonDefinition; onSettingUpdate: (QueryParamChangeEvent) => void; + subsettingOverrides: Array; } export default function SubSettingsPane({ modeButton, - onSettingUpdate + onSettingUpdate, + subsettingOverrides }: Props): ReactElement { const intl = useIntl(); const label = generateModeButtonLabel(modeButton.key, intl, modeButton.label); + const overridesIds = subsettingOverrides?.map(x => x.id); + // Split the mode settings out based on whether they're submodes or not // This is so we can display submodes in a grid at the top const { @@ -160,7 +164,12 @@ export default function SubSettingsPane({ settingsOnlySubmodes } = modeButton.modeSettings.reduce( (accumulator, cur) => { - if (cur.type === "SUBMODE") { + const overrideIndex = overridesIds?.indexOf(cur.id); + + // If there is a setting override in the config, use that setting instead of the default. + if (subsettingOverrides && overrideIndex > -1) { + accumulator.settingsNoSubmodes.push(subsettingOverrides[overrideIndex]); + } else if (cur.type === "SUBMODE") { accumulator.settingsOnlySubmodes.push(cur); } else { accumulator.settingsNoSubmodes.push(cur); diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index f97edabd6..6f1699c32 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -11,7 +11,7 @@ import { useInteractions, useRole } from "@floating-ui/react"; -import { ModeButtonDefinition } from "@opentripplanner/types"; +import { ModeButtonDefinition, ModeSetting } from "@opentripplanner/types"; import { CaretDown } from "@styled-icons/fa-solid/CaretDown"; import { CaretUp } from "@styled-icons/fa-solid/CaretUp"; import React, { ReactElement, useCallback, useRef, useState } from "react"; @@ -193,6 +193,7 @@ interface ModeButtonProps { onPopupKeyboardExpand: (id: string) => void; onSettingsUpdate: (QueryParamChangeEvent) => void; onToggle: () => void; + subsettingOverrides?: Array; } function ModeButton({ @@ -205,7 +206,8 @@ function ModeButton({ onPopupClose, onPopupKeyboardExpand, onSettingsUpdate, - onToggle + onToggle, + subsettingOverrides }: ModeButtonProps) { const intl = useIntl(); @@ -360,6 +362,7 @@ function ModeButton({ @@ -399,6 +402,11 @@ interface Props { * @param key Mode button to be toggled */ onToggleModeButton: (key: string, newState: boolean) => void; + /** + * Array of configurable overrides for mode subsettings. For example, walk reluctance defaults + * to checkmark but slider is also supported. + */ + subsettingOverrides?: Array; } export default function ModeSelector({ @@ -408,7 +416,8 @@ export default function ModeSelector({ label, modeButtons = [], onSettingsUpdate, - onToggleModeButton + onToggleModeButton, + subsettingOverrides }: Props): ReactElement { // State that holds the id of the active mode combination popup that was triggered via keyboard. // It is used to enable/disable hover effects to avoid keyboard focus being stolen @@ -434,6 +443,7 @@ export default function ModeSelector({ onToggle={useCallback(() => { onToggleModeButton(button.key, !button.enabled); }, [button, onToggleModeButton])} + subsettingOverrides={subsettingOverrides} /> ))} From 6119a5487cf89e0b4a986fcb9e324fb9a80b74c6 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Fri, 4 Aug 2023 16:04:22 -0500 Subject: [PATCH 17/34] chore(trip-form): update types --- packages/trip-form/package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/trip-form/package.json b/packages/trip-form/package.json index b03ba600c..760ddc6c0 100644 --- a/packages/trip-form/package.json +++ b/packages/trip-form/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@types/flat": "^5.0.2", - "@opentripplanner/types": "6.0.0-alpha.4" + "@opentripplanner/types": "7.0.0-alpha.2" }, "peerDependencies": { "react": "^16.14.0", diff --git a/yarn.lock b/yarn.lock index 6593587b4..07bfaf87a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3241,10 +3241,10 @@ resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-1.0.3.tgz#db9cc719191a62e7d9200f6e7bab21c5b848adca" integrity sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q== -"@opentripplanner/types@6.0.0-alpha.4": - version "6.0.0-alpha.4" - resolved "https://registry.yarnpkg.com/@opentripplanner/types/-/types-6.0.0-alpha.4.tgz#dee3c06675e30c596159d182ed707e7710cd937c" - integrity sha512-FlYsHm/tk+x0ldrEG1X9Ph1R1k3way1oEdKX7XSnhu9lNTzL4lO0hfT1PLzNXMfBRar7TzK94PHNDibJsod8Kw== +"@opentripplanner/types@7.0.0-alpha.2": + version "7.0.0-alpha.2" + resolved "https://registry.yarnpkg.com/@opentripplanner/types/-/types-7.0.0-alpha.2.tgz#d10c69f99b2da6d1e80ab5989520bde8e558627b" + integrity sha512-IzQwBcxkoyM+r/W7u+nzICf/6QnreLKppkrZZNl0yVxFiT6RBOd0U2UxMxLPYuRd/3awQabI3/qQ3/6ZxMWPfA== "@peculiar/asn1-schema@^2.1.6", "@peculiar/asn1-schema@^2.3.0": version "2.3.3" From 9102ce7eaf6850880bbe179bdcec39bf10e93e11 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Tue, 8 Aug 2023 16:13:45 -0500 Subject: [PATCH 18/34] refactor: remove subsetting override --- .../src/MetroModeSelector/SubSettingsPane.tsx | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx index 70f65b9b2..257b58a46 100644 --- a/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx +++ b/packages/trip-form/src/MetroModeSelector/SubSettingsPane.tsx @@ -145,18 +145,14 @@ const ModeSettingRenderer = ({ interface Props { modeButton: ModeButtonDefinition; onSettingUpdate: (QueryParamChangeEvent) => void; - subsettingOverrides: Array; } export default function SubSettingsPane({ modeButton, - onSettingUpdate, - subsettingOverrides + onSettingUpdate }: Props): ReactElement { const intl = useIntl(); const label = generateModeButtonLabel(modeButton.key, intl, modeButton.label); - const overridesIds = subsettingOverrides?.map(x => x.id); - // Split the mode settings out based on whether they're submodes or not // This is so we can display submodes in a grid at the top const { @@ -164,12 +160,7 @@ export default function SubSettingsPane({ settingsOnlySubmodes } = modeButton.modeSettings.reduce( (accumulator, cur) => { - const overrideIndex = overridesIds?.indexOf(cur.id); - - // If there is a setting override in the config, use that setting instead of the default. - if (subsettingOverrides && overrideIndex > -1) { - accumulator.settingsNoSubmodes.push(subsettingOverrides[overrideIndex]); - } else if (cur.type === "SUBMODE") { + if (cur.type === "SUBMODE") { accumulator.settingsOnlySubmodes.push(cur); } else { accumulator.settingsNoSubmodes.push(cur); From f478a45833c0e776f97041c1270fc392efe77195 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Tue, 8 Aug 2023 16:21:09 -0500 Subject: [PATCH 19/34] chore(core-utils): Update comment for truthValue --- packages/core-utils/src/query-gen.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/core-utils/src/query-gen.ts b/packages/core-utils/src/query-gen.ts index bdb63413e..9261ad28b 100644 --- a/packages/core-utils/src/query-gen.ts +++ b/packages/core-utils/src/query-gen.ts @@ -229,6 +229,7 @@ export function generateOtp2Query( } prev[cur.key] = cur.value; + // If we assign a value on true, return the value (or null) instead of a boolean. if (cur.type === "CHECKBOX" && cur.truthValue) { prev[cur.key] = cur.value === true ? cur.truthValue : null; } From 6009008cf04910a5d8f5df9ae734e162e80dc895 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Wed, 9 Aug 2023 16:26:23 -0500 Subject: [PATCH 20/34] refactor: remove subsettingOverride --- packages/trip-form/src/MetroModeSelector/index.tsx | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index 6f1699c32..1f495fdb9 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -11,7 +11,7 @@ import { useInteractions, useRole } from "@floating-ui/react"; -import { ModeButtonDefinition, ModeSetting } from "@opentripplanner/types"; +import { ModeButtonDefinition } from "@opentripplanner/types"; import { CaretDown } from "@styled-icons/fa-solid/CaretDown"; import { CaretUp } from "@styled-icons/fa-solid/CaretUp"; import React, { ReactElement, useCallback, useRef, useState } from "react"; @@ -193,7 +193,6 @@ interface ModeButtonProps { onPopupKeyboardExpand: (id: string) => void; onSettingsUpdate: (QueryParamChangeEvent) => void; onToggle: () => void; - subsettingOverrides?: Array; } function ModeButton({ @@ -206,8 +205,7 @@ function ModeButton({ onPopupClose, onPopupKeyboardExpand, onSettingsUpdate, - onToggle, - subsettingOverrides + onToggle }: ModeButtonProps) { const intl = useIntl(); @@ -362,7 +360,6 @@ function ModeButton({ @@ -406,7 +403,6 @@ interface Props { * Array of configurable overrides for mode subsettings. For example, walk reluctance defaults * to checkmark but slider is also supported. */ - subsettingOverrides?: Array; } export default function ModeSelector({ @@ -416,8 +412,7 @@ export default function ModeSelector({ label, modeButtons = [], onSettingsUpdate, - onToggleModeButton, - subsettingOverrides + onToggleModeButton }: Props): ReactElement { // State that holds the id of the active mode combination popup that was triggered via keyboard. // It is used to enable/disable hover effects to avoid keyboard focus being stolen @@ -443,7 +438,6 @@ export default function ModeSelector({ onToggle={useCallback(() => { onToggleModeButton(button.key, !button.enabled); }, [button, onToggleModeButton])} - subsettingOverrides={subsettingOverrides} /> ))} From 92d534ab6bbd35dd7128c7bc1ea364a1802dc90b Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Wed, 9 Aug 2023 16:30:03 -0500 Subject: [PATCH 21/34] remove question mark --- packages/trip-form/i18n/en-US.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/trip-form/i18n/en-US.yml b/packages/trip-form/i18n/en-US.yml index e5fbe7c67..cc3b55245 100644 --- a/packages/trip-form/i18n/en-US.yml +++ b/packages/trip-form/i18n/en-US.yml @@ -25,7 +25,7 @@ otpUi: rail-label: Train subway-label: Subway tram-label: Tram - walkReluctance-label: Avoid Walking? + walkReluctance-label: Avoid Walking walkTolerance-label: Walking Tolerance walkTolerance-labelHigh: More Walking walkTolerance-labelLow: Less Walking From 0ca143cabb344093ba13ed7be9eb7353bf16a8e5 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Thu, 10 Aug 2023 12:26:44 -0500 Subject: [PATCH 22/34] remove unneccesary comment --- packages/trip-form/src/MetroModeSelector/index.tsx | 4 ---- 1 file changed, 4 deletions(-) diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index 1f495fdb9..f97edabd6 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -399,10 +399,6 @@ interface Props { * @param key Mode button to be toggled */ onToggleModeButton: (key: string, newState: boolean) => void; - /** - * Array of configurable overrides for mode subsettings. For example, walk reluctance defaults - * to checkmark but slider is also supported. - */ } export default function ModeSelector({ From 8723eb6b3f54e3bd8519fdeb41abe1287ea10450 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Mon, 7 Aug 2023 14:47:41 -0700 Subject: [PATCH 23/34] fix(trip-form): fix dropdown/hover bug in firefox --- packages/trip-form/src/MetroModeSelector/index.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index f97edabd6..82d28bccb 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -210,6 +210,7 @@ function ModeButton({ const intl = useIntl(); const [open, setOpen] = useState(false); + const [hoverEnabled, setHoverEnabled] = useState(true); const arrowRef = useRef(null); const onOpenChange = useCallback( value => { @@ -238,7 +239,7 @@ function ModeButton({ useHover(context, { // Enable hover only if no popup has been triggered via keyboard. // (This is to avoid focus being stolen by hovering out of another button.) - enabled: itemWithKeyboard === null, + enabled: itemWithKeyboard === null && hoverEnabled, handleClose: safePolygon({ blockPointerEvents: false, restMs: 500, @@ -345,6 +346,12 @@ function ModeButton({ {...getFloatingProps()} // Matches ID on Header element in SubSettingsPane aria-labelledby={`metro-mode-selector-${modeButton.key}-button-label`} + // This is a workaround for a bug in Firefox. + // https://github.com/floating-ui/floating-ui/issues/2299 + onPointerDown={() => { + setHoverEnabled(false); + setTimeout(() => setHoverEnabled(true), 100); + }} ref={floating} style={{ left: x ?? 0, From b5948198592ca3da219856a10349c108601d4757 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Tue, 8 Aug 2023 11:51:22 -0700 Subject: [PATCH 24/34] add link to firefox bug tracker --- packages/trip-form/src/MetroModeSelector/index.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/trip-form/src/MetroModeSelector/index.tsx b/packages/trip-form/src/MetroModeSelector/index.tsx index 82d28bccb..614e6dfb2 100644 --- a/packages/trip-form/src/MetroModeSelector/index.tsx +++ b/packages/trip-form/src/MetroModeSelector/index.tsx @@ -348,6 +348,7 @@ function ModeButton({ aria-labelledby={`metro-mode-selector-${modeButton.key}-button-label`} // This is a workaround for a bug in Firefox. // https://github.com/floating-ui/floating-ui/issues/2299 + // https://bugzilla.mozilla.org/show_bug.cgi?id=1829500 onPointerDown={() => { setHoverEnabled(false); setTimeout(() => setHoverEnabled(true), 100); From 7bec5755361b610e00314a7d0fdc5231d79ac6d1 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 9 Aug 2023 23:29:17 +0000 Subject: [PATCH 25/34] chore(release): 3.1.5 [skip ci] # [@opentripplanner/trip-form-v3.1.5](https://github.com/opentripplanner/otp-ui/compare/@opentripplanner/trip-form-v3.1.4...@opentripplanner/trip-form-v3.1.5) (2023-08-09) ### Bug Fixes * **trip-form:** fix dropdown/hover bug in firefox ([c567269](https://github.com/opentripplanner/otp-ui/commit/c56726936874b5b583972672ec88298d1949ac78)) --- packages/trip-form/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/trip-form/package.json b/packages/trip-form/package.json index 760ddc6c0..a56bc26d8 100644 --- a/packages/trip-form/package.json +++ b/packages/trip-form/package.json @@ -1,6 +1,6 @@ { "name": "@opentripplanner/trip-form", - "version": "3.1.4", + "version": "3.1.5", "description": "Trip Settings Form and Related Components", "author": "@binh-dam-ibigroup", "homepage": "https://github.com/opentripplanner/otp-ui/#readme", From 16c798268dd5871ca3c6d43d3a3e8ebdef743e58 Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Thu, 10 Aug 2023 12:55:17 -0500 Subject: [PATCH 26/34] update fr translation string --- packages/trip-form/i18n/fr.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/trip-form/i18n/fr.yml b/packages/trip-form/i18n/fr.yml index 0a662cb46..7eb215dd6 100644 --- a/packages/trip-form/i18n/fr.yml +++ b/packages/trip-form/i18n/fr.yml @@ -25,6 +25,7 @@ otpUi: rail-label: Train subway-label: Métro tram-label: Tram + walkReluctance-label: Évitez de marcher walkTolerance-label: Tolérance pour la marche walkTolerance-labelHigh: Plus de marche walkTolerance-labelLow: Moins de marche From b52deff67eb7639934b6cadcc82bb0bd7de8a38a Mon Sep 17 00:00:00 2001 From: amy-corson-ibigroup <115499534+amy-corson-ibigroup@users.noreply.github.com> Date: Thu, 10 Aug 2023 14:05:56 -0500 Subject: [PATCH 27/34] add translation to generateMainSettingLabel --- packages/trip-form/src/MetroModeSelector/i18n.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/trip-form/src/MetroModeSelector/i18n.ts b/packages/trip-form/src/MetroModeSelector/i18n.ts index 7e5e78f77..86b4c7523 100644 --- a/packages/trip-form/src/MetroModeSelector/i18n.ts +++ b/packages/trip-form/src/MetroModeSelector/i18n.ts @@ -57,6 +57,13 @@ export default function generateModeButtonLabel( function generateMainSettingLabel(key: string, intl: IntlShape): string { switch (key) { + case "walkReluctance": + return intl.formatMessage({ + defaultMessage: + defaultMessages["otpUi.ModeSelector.settings.walkReluctance-label"], + description: `Metro Mode Selector Setting Label (Walk Reluctance)`, + id: "otpUi.ModeSelector.settings.walkReluctance-label" + }); case "walkTolerance": return intl.formatMessage({ defaultMessage: From bf50ce58e4b78e36bfec22ac44f38a2f4254c27b Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Thu, 10 Aug 2023 19:44:12 +0000 Subject: [PATCH 28/34] chore(release): 3.2.0 [skip ci] # [@opentripplanner/trip-form-v3.2.0](https://github.com/opentripplanner/otp-ui/compare/@opentripplanner/trip-form-v3.1.5...@opentripplanner/trip-form-v3.2.0) (2023-08-10) ### Features * **trip-form:** support config mode subsetting ([bc682aa](https://github.com/opentripplanner/otp-ui/commit/bc682aa858a562fe1ee7631213f2945b13aa6c97)) --- packages/trip-form/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/trip-form/package.json b/packages/trip-form/package.json index a56bc26d8..75d18d637 100644 --- a/packages/trip-form/package.json +++ b/packages/trip-form/package.json @@ -1,6 +1,6 @@ { "name": "@opentripplanner/trip-form", - "version": "3.1.5", + "version": "3.2.0", "description": "Trip Settings Form and Related Components", "author": "@binh-dam-ibigroup", "homepage": "https://github.com/opentripplanner/otp-ui/#readme", From 3d2392c3588f6261e634e4ce45e479bf9452159c Mon Sep 17 00:00:00 2001 From: binh-dam-ibigroup <56846598+binh-dam-ibigroup@users.noreply.github.com> Date: Tue, 15 Aug 2023 15:34:19 -0400 Subject: [PATCH 29/34] fix(core-utils): Add field leg.headsign to graphql plan query, remove trip.tripHeadsign. BREAKING CHANGE: trip.tripHeadsign is no longer returned by the plan queries made by query-gen. --- packages/core-utils/src/otpSchema.json | 38 +++++++++++++---------- packages/core-utils/src/planQuery.graphql | 3 +- 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/packages/core-utils/src/otpSchema.json b/packages/core-utils/src/otpSchema.json index b6d46fc83..6b2990fb3 100644 --- a/packages/core-utils/src/otpSchema.json +++ b/packages/core-utils/src/otpSchema.json @@ -2292,7 +2292,7 @@ "fields": [ { "name": "id", - "description": "Identifier local to the itinerary that allows to cross-reference and deduplicate\nfare products that span more than one leg.\n\nIf you want to uniquely identify the fare product itself (not its use) use the product's `id`.\n\n### Example: Day pass\n\nWhen a day pass is valid for all three legs in the itinerary it will appear\nfor each leg but with the same use-`id`.\n\n*It is the responsibility of the API consumers to display the day pass as a product for the\nentire itinerary rather than three day passes!*\n\n### Example: Several single tickets\n\nIf you have two legs and need to buy two single tickets they will appear in each leg with the\nsame `product.id` but different use-`id`.", + "description": "Represents the use of a single instance of a fare product throughout the itinerary. It can\nbe used to cross-reference and de-duplicate fare products that are applicable for more than one\nleg.\n\nIf you want to uniquely identify the fare product itself (not its use) use the product's `id`.\n\n### Example: Day pass\n\nThe day pass is valid for both legs in the itinerary. It is listed as the applicable `product` for each leg,\nand the same FareProductUse id is shown, indicating that only one pass was used/bought.\n\n**Illustration**\n```yaml\nitinerary:\n leg1:\n fareProducts:\n id: \"AAA\" // id of a FareProductUse instance\n product:\n id: \"day-pass\" // product id\n name: \"Day Pass\"\n leg2:\n fareProducts:\n id: \"AAA\" // identical to leg1. the passenger needs to buy ONE pass, not two.\n product:\n id: \"day-pass\" // product id\n name: \"Day Pass\"\n```\n\n**It is the responsibility of the API consumers to display the day pass as a product for the\nentire itinerary rather than two day passes!**\n\n### Example: Several single tickets\n\nIf you have two legs and need to buy two single tickets they will appear in each leg with the\nsame `FareProduct.id` but different `FareProductUse.id`.\n\n**Illustration**\n```yaml\nitinerary:\n leg1:\n fareProducts:\n id: \"AAA\" // id of a FareProductUse instance, not product id\n product:\n id: \"single-ticket\" // product id\n name: \"Single Ticket\"\n leg2:\n fareProducts:\n id: \"BBB\" // different to leg1. the passenger needs to buy two single tickets.\n product:\n id: \"single-ticket\" // product id\n name: \"Single Ticket\"\n```", "args": [], "type": { "kind": "NON_NULL", @@ -3558,7 +3558,7 @@ }, { "name": "steps", - "description": null, + "description": "The turn-by-turn navigation instructions.", "args": [], "type": { "kind": "LIST", @@ -3572,6 +3572,18 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "headsign", + "description": "For transit legs, the headsign that the vehicle shows at the stop where the passenger boards.\nFor non-transit legs, null.", + "args": [], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "pickupType", "description": "This is used to indicate if boarding this leg is possible only with special arrangements.", @@ -8446,49 +8458,43 @@ "enumValues": [ { "name": "NO_TRANSIT_CONNECTION", - "description": "No transit connection was found between the origin and destination withing the operating day or the next day", + "description": "No transit connection was found between the origin and destination within the operating day or\nthe next day, not even sub-optimal ones.", "isDeprecated": false, "deprecationReason": null }, { "name": "NO_TRANSIT_CONNECTION_IN_SEARCH_WINDOW", - "description": "Transit connection was found, but it was outside the search window, see metadata for the next search window", + "description": "A transit connection was found, but it was outside the search window. See the metadata for a token\nfor retrieving the result outside the search window.", "isDeprecated": false, "deprecationReason": null }, { "name": "OUTSIDE_SERVICE_PERIOD", - "description": "The date specified is outside the range of data currently loaded into the system", + "description": "The date specified is outside the range of data currently loaded into the system as it is too\nfar into the future or the past.\n\nThe specific date range of the system is configurable by an administrator and also depends on\nthe input data provided.", "isDeprecated": false, "deprecationReason": null }, { "name": "OUTSIDE_BOUNDS", - "description": "The coordinates are outside the bounds of the data currently loaded into the system", + "description": "The coordinates are outside the geographic bounds of the transit and street data currently loaded\ninto the system and therefore cannot return any results.", "isDeprecated": false, "deprecationReason": null }, { "name": "LOCATION_NOT_FOUND", - "description": "The specified location is not close to any streets or transit stops", + "description": "The specified location is not close to any streets or transit stops currently loaded into the\nsystem, even though it is generally within its bounds.\n\nThis can happen when there is only transit but no street data coverage at the location in\nquestion.", "isDeprecated": false, "deprecationReason": null }, { "name": "NO_STOPS_IN_RANGE", - "description": "No stops are reachable from the location specified. You can try searching using a different access or egress mode", + "description": "No stops are reachable from the start or end locations specified.\n\nYou can try searching using a different access or egress mode, for example cycling instead of walking,\nincrease the walking/cycling/driving speed or have an administrator change the system's configuration\nso that stops further away are considered.", "isDeprecated": false, "deprecationReason": null }, { "name": "WALKING_BETTER_THAN_TRANSIT", - "description": "The origin and destination are so close to each other, that walking is always better, but no direct mode was specified for the search", - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "SYSTEM_ERROR", - "description": "An unknown error happened during the search. The details have been logged to the server logs", + "description": "Transit connections were requested and found but because it is easier to just walk all the way\nto the destination they were removed.\n\nIf you want to still show the transit results, you need to make walking less desirable by\nincreasing the walk reluctance.", "isDeprecated": false, "deprecationReason": null } @@ -10059,7 +10065,7 @@ "args": [ { "name": "language", - "description": "If translated headsign is found from gtfs translation.txt and wanted language is not same as\nfeed's language then returns wanted translation. Otherwise uses name from trip_headsign.txt.", + "description": "If a translated headsign is found from GTFS translation.txt and wanted language is not same as\nfeed's language then returns wanted translation. Otherwise uses name from trip_headsign.txt.", "type": { "kind": "SCALAR", "name": "String", diff --git a/packages/core-utils/src/planQuery.graphql b/packages/core-utils/src/planQuery.graphql index 2dabc5726..3aa7d4372 100644 --- a/packages/core-utils/src/planQuery.graphql +++ b/packages/core-utils/src/planQuery.graphql @@ -106,6 +106,7 @@ query Plan( } vertexType } + headsign interlineWithPreviousLeg intermediateStops { lat @@ -222,10 +223,8 @@ query Plan( } stopPosition } - gtfsId id - tripHeadsign } } startTime From acd3c4e3811415b07b33d6f321ad9414272b5912 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Wed, 16 Aug 2023 13:39:51 -0700 Subject: [PATCH 30/34] chore(core-utils): remove walk speed from snapshots --- __snapshots__/storybook.test.ts.snap | 117526 +++++++----------------- 1 file changed, 33051 insertions(+), 84475 deletions(-) diff --git a/__snapshots__/storybook.test.ts.snap b/__snapshots__/storybook.test.ts.snap index 5fc520284..06d5d4440 100644 --- a/__snapshots__/storybook.test.ts.snap +++ b/__snapshots__/storybook.test.ts.snap @@ -115157,7 +115157,7 @@ exports[`Storyshots ItineraryBody/otp-ui OTP 2 Flex Itinerary 2`] = ` - ID area_626_flexed_to + ID area_626 @@ -115273,7 +115273,7 @@ exports[`Storyshots ItineraryBody/otp-ui OTP 2 Flex Itinerary 2`] = ` - ID area_626_flexed_to + ID area_626
@@ -115290,7 +115290,7 @@ exports[`Storyshots ItineraryBody/otp-ui OTP 2 Flex Itinerary 2`] = ` - ID area_626_flexed_to + ID area_626
`; -exports[`Storyshots PrintableItinerary Bike Only Itinerary 1`] = ` +exports[`Storyshots RouteViewerOverlay Default 1`] = ` - + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Flex Route 1`] = ` + + + + + + + - -`; - -exports[`Storyshots PrintableItinerary Bike Only Itinerary 2`] = ` -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 503 SW Alder St, Portland, OR, USA 97204 - -
-
-
-
-
-
- - - - -
-
-
- - Bicycle 0.7 miles to - - 1737 SW Morrison St, Portland, OR, USA 97205 - - -
-
- - Head - EAST - on - - SW Alder St - - - 87 feet - - -
-
- - RIGHT - on - - SW 5th Ave - - - 257 feet - - -
-
- - RIGHT - on - - SW Morrison St - - - 0.6 miles - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Bike Rental Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Bike Rental Itinerary 2`] = ` -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 2624 SE 30th Ave, Portland, OR, USA 97202 - -
-
-
-
-
-
- - - -
-
-
- - Walk 498 feet to - - SE 30th at Division - - -
-
- - Head - WEST - on - - SE Clinton St - - - 79 feet - - -
-
- - RIGHT - on - - SE 30th Ave - - - 419 feet - - -
-
-
-
-
-
-
- - - - - - - - - - -
-
-
- - Bicycle 0.6 miles to - - SE 29th at Hawthorne - - -
-
- - CONTINUE - on - - SE 30th Ave - - - 0.3 miles - - -
-
- - LEFT - on - - SE Harrison St - - - 361 feet - - -
-
- - RIGHT - on - - SE 29th Ave - - - 0.2 miles - - -
-
- - LEFT - on - - SE Hawthorne Blvd - - - 50 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 0.1 miles to - - 1415 SE 28th Ave, Portland, OR, USA 97214 - - -
-
- - CONTINUE - on - - SE Hawthorne Blvd - - - 210 feet - - -
-
- - RIGHT - on - - SE 28th Ave - - - 295 feet - - -
-
- - LEFT - on - - SE Madison St - - - 114 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Bike Rental Transit Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Bike Rental Transit Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 2943 SE Washington St, Portland, OR, USA 97214 - -
-
-
-
-
-
- - - -
-
-
- - Walk 400 feet to - - SE 29th at Stark - - -
-
- - Head - NORTH - on - - SE 30th Ave - - - 103 feet - - -
-
- - RIGHT - on - - SE Stark St - - - 277 feet - - -
-
- - RIGHT - on - - SE 29th Ave - - - 19 feet - - -
-
-
-
-
-
-
- - - - - - - - - - -
-
-
- - Bicycle 0.8 miles to - - NE Glisan at 24th - - -
-
- - CONTINUE - on - - SE 29th Ave - - - 492 feet - - -
-
- - LEFT - on - - SE Pine St - - - 358 feet - - -
-
- - RIGHT - on - - SE 28th Ave - - - 518 feet - - -
-
- - LEFT - on - - SE Ankeny St - - - 0.2 miles - - -
-
- - RIGHT - on - - SE 24th Ave - - - 259 feet - - -
-
- - CONTINUE - on - - NE 24th Ave - - - 0.2 miles - - -
-
- - LEFT - on - - NE Glisan St - - - 57 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 497 feet to - - NE Sandy & 24th - - -
-
- - HARD_LEFT - on - - NE Glisan St - - - 57 feet - - -
-
- - LEFT - on - - NE 24th Ave - - - 382 feet - - -
-
- - RIGHT - on - - NE Sandy Blvd - - - 58 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - 12 - - - - Barbur/Sandy Blvd - - to - - Parkrose TC - -
-
-
- Board at - - NE Sandy & 24th - - (5066) at - - 4:02 PM - -
-
- Get off at - - NE Sandy & 57th - - (5104) at - - 4:14 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 279 feet to - - 0086 BIKETOWN - - -
-
- - Head - NORTHEAST - on - - NE Sandy Blvd - - - 75 feet - - -
-
- - HARD_LEFT - on - - NE Alameda St - - - 203 feet - - -
-
-
-
-
-
-
- - - - - - - - - - -
-
-
- - Bicycle 1 mile to - - NE 60th at Cully - - -
-
- - HARD_LEFT - on - - NE Alameda St - - - 203 feet - - -
-
- - HARD_LEFT - on - - NE 57th Ave - - - 0.6 miles - - -
-
- - CONTINUE - on - - NE Cully Blvd - - - 0.3 miles - - -
-
- - LEFT - on - - NE 60th Ave - - - 171 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 494 feet to - - 5916 NE Going St, Portland, OR, USA 97218 - - -
-
- - CONTINUE - on - - NE 60th Ave - - - 270 feet - - -
-
- - LEFT - on - - NE Going St - - - 225 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Bike Transit Bike Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Bike Transit Bike Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - KGW Studio on the Sq, Portland, OR, USA - -
-
-
-
-
-
- - - -
-
-
- - Walk 91 feet to - - corner of path and Pioneer Courthouse Sq (pedestrian street) - - -
-
- - Head - SOUTHEAST - on - - Unnamed Path - - - 91 feet - - -
-
-
-
-
-
-
- - - - -
-
-
- - Bicycle 0.1 miles to - - corner of path and Pioneer Sq N (path) - - -
-
- - LEFT - on - - Unnamed Path - - - 20 feet - - -
-
- - LEFT - on - - SW 6th Ave - - - 245 feet - - -
-
- - LEFT - on - - SW Morrison St - - - 241 feet - - -
-
- - LEFT - on - - Unnamed Path - - - 27 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 22 feet to - - Pioneer Square North MAX Station - - -
-
- - LEFT - on - - Pioneer Sq N (path) - - - 22 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - - - MAX Blue Line - - to - - Hillsboro - -
-
-
- Board at - - Pioneer Square North MAX Station - - (8383) at - - 3:46 PM - -
-
- Get off at - - Providence Park MAX Station - - (9757) at - - 3:49 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 19 feet to - - corner of path and Providence Park (path) - - -
-
- - Head - WEST - on - - Providence Park (path) - - - 19 feet - - -
-
-
-
-
-
-
- - - - -
-
-
- - Bicycle 230 feet to - - 1737 SW Morrison St, Portland, OR, USA 97205 - - -
-
- - RIGHT - on - - Unnamed Path - - - 104 feet - - -
-
- - RIGHT - on - - Unnamed Path - - - 27 feet - - -
-
- - RIGHT - on - - SW Morrison St - - - 99 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Classic Icons And Park And Ride Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Classic Icons And Park And Ride Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 330 SW Murray Blvd, Washington County, OR, USA 97005 - -
-
-
-
-
-
- - - -
-
-
- - Drive 2.4 miles to - - P+R Sunset TC - - -
-
- - Head - SOUTHWEST - on - - parking aisle - - - 158 feet - - -
-
- - RIGHT - on - - SW Murray Blvd - - - 0.2 miles - - -
-
- - CONTINUE - on - - NW Murray Blvd - - - 150 feet - - -
-
- - SLIGHTLY_RIGHT - on - - NW Murray Blvd - - - 0.4 miles - - -
-
- - CONTINUE - on - - NW Sunset Hwy - - - 0.6 miles - - -
-
- - CONTINUE - on - - NW Sunset Hwy - - - 0.3 miles - - -
-
- - LEFT - on - - SW Cedar Hills Blvd - - - 0.2 miles - - -
-
- - RIGHT - on - - SW Barnes Rd - - - 0.5 miles - - -
-
- - RIGHT - on - - service road - - - 0.2 miles - - -
-
- - RIGHT - on - - Sunset TC - - - 76 feet - - -
-
-
-
-
-
-
- - - - -
-
-
- - Walk 426 feet to - - Sunset TC MAX Station - - -
-
- - SLIGHTLY_RIGHT - on - - Unnamed Path - - - 16 feet - - -
-
- - LEFT - on - - steps - - - 232 feet - - -
-
- - LEFT - on - - Unnamed Path - - - 19 feet - - -
-
- - RIGHT - on - - Sunset TC (path) - - - 159 feet - - -
-
-
-
-
-
-
- - - - - -
-
-
-
- - - - MAX Blue Line - - to - - Gresham - -
-
-
- Board at - - Sunset TC MAX Station - - (2600) at - - 4:05 PM - -
-
- Get off at - - Oak/ SW 1st Ave MAX Station - - (8337) at - - 4:27 PM - -
-
-
-
-
-
-
- - - - -
-
-
- - Walk 0.1 miles to - - 205 SW Pine St, Portland, OR, USA 97204 - - -
-
- - Head - NORTHEAST - on - - Oak/SW 1st Ave (path) - - - 13 feet - - -
-
- - CONTINUE - on - - Unnamed Path - - - 27 feet - - -
-
- - LEFT - on - - SW Oak St - - - 37 feet - - -
-
- - RIGHT - on - - SW 1st Ave - - - 260 feet - - -
-
- - LEFT - on - - SW Pine St - - - 337 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary E Scooter Rental Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary E Scooter Rental Itinerary 2`] = ` -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 600 SW 5th Ave, Portland, OR, USA 97204 - -
-
-
-
-
-
- - - -
-
-
- - Walk 206 feet to - - EMAQ - - -
-
- - Head - EAST - on - - SW Alder St - - - 118 feet - - -
-
- - LEFT - on - - SW 4th Ave - - - 88 feet - - -
-
-
-
-
-
-
- - - - - - - - - -
-
-
- - Ride 0.3 miles to - - 205 SW Pine St, Portland, OR, USA 97204 - - -
-
- - CONTINUE - on - - SW 4th Ave - - - 0.2 miles - - -
-
- - RIGHT - on - - SW Pine St - - - 456 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary E Scooter Rental Transit Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary E Scooter Rental Transit Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 2943 SE Washington St, Portland, OR, USA 97214 - -
-
-
-
-
-
- - - -
-
-
- - Walk 0.4 miles to - - Shared E-scooter - - -
-
- - Head - SOUTH - on - - SE 30th Ave - - - 0.2 miles - - -
-
- - RIGHT - on - - SE Belmont St - - - 330 feet - - -
-
- - LEFT - on - - SE 29th Ave - - - 511 feet - - -
-
- - RIGHT - on - - SE Taylor St - - - 235 feet - - -
-
-
-
-
-
-
- - - - - - - - - - -
-
-
- - Ride 1.4 miles to - - NE Broadway - - -
-
- - CONTINUE - on - - SE Taylor St - - - 26 feet - - -
-
- - RIGHT - on - - SE 28th Ave - - - 0.6 miles - - -
-
- - CONTINUE - on - - NE 28th Ave - - - 0.7 miles - - -
-
- - SLIGHTLY_RIGHT - on - - NE Halsey St - - - 17 feet - - -
-
- - RIGHT - on - - NE Halsey St - - - 59 feet - - -
-
- - SLIGHTLY_LEFT - on - - NE 28th Ave - - - 28 feet - - -
-
- - SLIGHTLY_LEFT - on - - NE 28th Ave - - - 489 feet - - -
-
- - RIGHT - on - - NE Broadway - - - 86 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Walk to - - NE Broadway & 28th - - -
-
- - RIGHT - on - - street transit link - - -
-
-
-
-
-
-
- - - -
-
-
-
- - 70 - - - - 12th/NE 33rd Ave - - to - - NE Sunderland - -
-
-
- Board at - - NE Broadway & 28th - - (638) at - - 4:08 PM - -
-
- Get off at - - NE 33rd & Shaver - - (7393) at - - 4:17 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 0.4 miles to - - Shared E-scooter - - -
-
- - Head - NORTH - on - - NE 33rd Ave - - - 33 feet - - -
-
- - RIGHT - on - - NE Shaver St - - - 0.3 miles - - -
-
- - LEFT - on - - NE 38th Ave - - - 332 feet - - -
-
-
-
-
-
-
- - - - - - - - - - -
-
-
- - Ride 1 mile to - - 5112 NE 47th Pl, Portland, OR, USA 97218 - - -
-
- - CONTINUE - on - - NE 38th Ave - - - 355 feet - - -
-
- - RIGHT - on - - NE Skidmore St - - - 0.2 miles - - -
-
- - LEFT - on - - NE 42nd Ave - - - 0.4 miles - - -
-
- - RIGHT - on - - NE Alberta St - - - 0.3 miles - - -
-
- - LEFT - on - - NE 47th Pl - - - 313 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary OTP 2 Scooter Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary OTP 2 Scooter Itinerary 2`] = ` -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 300 Courtland St NE, Atlanta, GA 30303-12ND, United States - -
-
-
-
-
-
- - - - -
-
-
- - Walk 0.2 miles to - - Razor Vehicle - - -
-
- - Head - SOUTH - on - - Courtland Street Northeast - - - 172 feet - - -
-
- - RIGHT - on - - Unnamed Path - - - 0.1 miles - - -
-
- - LEFT - on - - Peachtree Center Avenue Northeast - - - 140 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Ride 1 mile to - - 126 Mitchell St SW, Atlanta, GA 30303-3524, United States - - -
-
- - HARD_RIGHT - on - - Peachtree Center Avenue Northeast - - - 12 feet - - -
-
- - LEFT - on - - service road - - - 10 feet - - -
-
- - LEFT - on - - Peachtree Center Cycle Track - - - 0.5 miles - - -
-
- - RIGHT - on - - Edgewood Avenue Northeast - - - 0.1 miles - - -
-
- - LEFT - on - - Pryor Street Southwest - - - 269 feet - - -
-
- - CONTINUE - on - - Pryor Street - - - 518 feet - - -
-
- - CONTINUE - on - - Pryor Street Southwest - - - 0.2 miles - - -
-
- - RIGHT - on - - Unnamed Path - - - 19 feet - - -
-
- - RIGHT - on - - sidewalk - - - 22 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Park And Ride Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Park And Ride Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 330 SW Murray Blvd, Washington County, OR, USA 97005 - -
-
-
-
-
-
- - - - -
-
-
- - Drive 2.4 miles to - - P+R Sunset TC - - -
-
- - Head - SOUTHWEST - on - - parking aisle - - - 158 feet - - -
-
- - RIGHT - on - - SW Murray Blvd - - - 0.2 miles - - -
-
- - CONTINUE - on - - NW Murray Blvd - - - 150 feet - - -
-
- - SLIGHTLY_RIGHT - on - - NW Murray Blvd - - - 0.4 miles - - -
-
- - CONTINUE - on - - NW Sunset Hwy - - - 0.6 miles - - -
-
- - CONTINUE - on - - NW Sunset Hwy - - - 0.3 miles - - -
-
- - LEFT - on - - SW Cedar Hills Blvd - - - 0.2 miles - - -
-
- - RIGHT - on - - SW Barnes Rd - - - 0.5 miles - - -
-
- - RIGHT - on - - service road - - - 0.2 miles - - -
-
- - RIGHT - on - - Sunset TC - - - 76 feet - - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 426 feet to - - Sunset TC MAX Station - - -
-
- - SLIGHTLY_RIGHT - on - - Unnamed Path - - - 16 feet - - -
-
- - LEFT - on - - steps - - - 232 feet - - -
-
- - LEFT - on - - Unnamed Path - - - 19 feet - - -
-
- - RIGHT - on - - Sunset TC (path) - - - 159 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - - - MAX Blue Line - - to - - Gresham - -
-
-
- Board at - - Sunset TC MAX Station - - (2600) at - - 4:05 PM - -
-
- Get off at - - Oak/ SW 1st Ave MAX Station - - (8337) at - - 4:27 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 0.1 miles to - - 205 SW Pine St, Portland, OR, USA 97204 - - -
-
- - Head - NORTHEAST - on - - Oak/SW 1st Ave (path) - - - 13 feet - - -
-
- - CONTINUE - on - - Unnamed Path - - - 27 feet - - -
-
- - LEFT - on - - SW Oak St - - - 37 feet - - -
-
- - RIGHT - on - - SW 1st Ave - - - 260 feet - - -
-
- - LEFT - on - - SW Pine St - - - 337 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Styled Walk Transit Walk Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Styled Walk Transit Walk Itinerary 2`] = ` -.c18 { - font-weight: 200; -} - -.c9 { - font-weight: inherit; -} - -.c14 { - font-weight: 500; -} - -.c15 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c1 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c2 { - border-top: none; - padding-top: 0; -} - -.c4 { - margin-left: 10px; -} - -.c11 { - font-size: 14px; - margin-top: 3px; -} - -.c10 { - margin-top: 5px; -} - -.c5 { - font-size: 18px; -} - -.c8 { - font-size: 18px; -} - -.c6 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c12 .c13 { - font-weight: bold; -} - -.c16 { - font-weight: bold; -} - -.c16 .c17 { - font-weight: normal; -} - -.c7 { - float: left; - width: 32px; - height: 32px; -} - -.c0 .c3 { - background-color: pink; -} - -
-
-
-
- - Depart - - from - - KGW Studio on the Sq, Portland, OR, USA - -
-
-
-
-
-
- - - -
-
-
- - Walk 269 feet to - - Pioneer Square North MAX Station - - -
-
- - Head - NORTHWEST - on - - Unnamed Path - - - 167 feet - - -
-
- - LEFT - on - - Pioneer Sq N (path) - - - 101 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - - - MAX Blue Line - - to - - Hillsboro - -
-
-
- Board at - - Pioneer Square North MAX Station - - (8383) at - - 3:46 PM - -
-
- Get off at - - Providence Park MAX Station - - (9757) at - - 3:49 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 249 feet to - - 1737 SW Morrison St, Portland, OR, USA 97205 - - -
-
- - Head - WEST - on - - Providence Park (path) - - - 19 feet - - -
-
- - RIGHT - on - - Unnamed Path - - - 104 feet - - -
-
- - RIGHT - on - - Unnamed Path - - - 27 feet - - -
-
- - RIGHT - on - - SW Morrison St - - - 99 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Tnc Transit Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Tnc Transit Itinerary 2`] = ` -.c9 { - font-weight: inherit; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c7 { - font-size: 14px; - margin-top: 3px; -} - -.c6 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c8 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 128 NW 12th Ave, Portland - -
-
-
-
-
-
- - - - - - -
-
-
-
- - Take - - to - - West Burnside Street - -
-
-
- Estimated wait time for pickup: - - 4 min - -
-
- Estimated travel time: - - 2 min - - (does not account for traffic) -
-
-
-
-
-
-
- - - -
-
-
- - Walk to - - W Burnside & SW 6th - - -
-
-
-
-
-
- - - -
-
-
-
- - - -
-
-
- Board at - - W Burnside & SW 6th - - () at - - 11:02 AM - -
-
- Get off at - - E Burnside & SE 12th - - () at - - 11:08 AM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk to - - East Burnside Street - - -
-
-
-
-
-
- - - - - - -
-
-
-
- - Take - - to - - 407 NE 12th Ave, Portland - -
-
-
- Estimated wait time for pickup: - - 2 min - -
-
- Estimated travel time: - - 1 min - - (does not account for traffic) -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Walk Interlined Transit Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Walk Interlined Transit Itinerary 2`] = ` -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 47.97767, -122.20034 - -
-
-
-
-
-
- - - -
-
-
- - Walk 0.3 miles to - - Everett Station Bay C1 - - -
-
- - Head - SOUTH - on - - service road - - - 0.1 miles - - -
-
- - RIGHT - on - - Smith Avenue - - - 129 feet - - -
-
- - CONTINUE - on - - Paine Avenue - - - 61 feet - - -
-
- - LEFT - on - - 32nd Street - - - 67 feet - - -
-
- - RIGHT - on - - 32nd Street - - - 313 feet - - -
-
- - LEFT - on - - Unnamed Path - - - 380 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - 512 - - - - Northgate Station - -
-
-
- Board at - - Everett Station Bay C1 - - (2345) at - - 1:04 PM - -
-
- Get off at - - Northgate Station - - (2191) at - - 1:51 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk to - - Northgate Station - Bay 4 - - -
-
-
-
-
-
- - - -
-
-
-
- - 40 - - - - Downtown Seattle Ballard - -
-
-
- Board at - - Northgate Station - Bay 4 - - (35318) at - - 1:55 PM - -
-
- Get off at - - N 105th St & Aurora Ave N - - (40032) at - - 2:06 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 259 feet to - - Aurora Ave N & N 105th St - - -
-
- - Head - EAST - on - - North 105th Street - - - 64 feet - - -
-
- - RIGHT - on - - service road - - - 14 feet - - -
-
- - LEFT - on - - Unnamed Path - - - 180 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - E Line - - - - Downtown Seattle - -
-
-
- Board at - - Aurora Ave N & N 105th St - - (7080) at - - 2:07 PM - -
-
- Get off at - - 3rd Ave & Cherry St - - (490) at - - 2:39 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 443 feet to - - 208 James St, Seattle, WA 98104-2212, United States - - -
-
- - Head - SOUTHEAST - on - - sidewalk - - - 326 feet - - -
-
- - UTURN_RIGHT - on - - sidewalk - - - 117 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Walk Only Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Walk Only Itinerary 2`] = ` -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - KGW Studio on the Sq, Portland, OR, USA - -
-
-
-
-
-
- - - -
-
-
- - Walk 166 feet to - - 701 SW 6th Ave, Portland, OR, USA 97204 - - -
-
- - Head - NORTHWEST - on - - Unnamed Path - - -
-
- - LEFT - on - - Unnamed Path - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Walk Transit Transfer Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Walk Transit Transfer Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 3940 SE Brooklyn St, Portland, OR, USA 97202 - -
-
-
-
-
-
- - - -
-
-
- - Walk 238 feet to - - SE Cesar Chavez Blvd & Brooklyn (long address that spans multiple lines) - - -
-
- - Head - WEST - on - - SE Brooklyn St - - - 205 feet - - -
-
- - RIGHT - on - - SE Cesar E. Chavez Blvd - - - 33 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - 755X - - - - Cesar Chavez/Lombard (very long route name) - - to - - St. Johns via NAYA - -
-
-
- Board at - - SE Cesar Chavez Blvd & Brooklyn - - (7439) at - - 3:47 PM - -
-
- Get off at - - SE Cesar Chavez Blvd & Hawthorne - - (7459) at - - 3:52 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 440 feet to - - SE Hawthorne & Cesar Chavez Blvd - - -
-
- - Head - SOUTH - on - - service road - - - 146 feet - - -
-
- - RIGHT - on - - SE Cesar E. Chavez Blvd - - - 198 feet - - -
-
- - LEFT - on - - SE Hawthorne Blvd - - - 96 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - 1 - - - - Hawthorne - - to - - Portland - -
-
-
- Board at - - SE Hawthorne & Cesar Chavez Blvd - - (2626) at - - 4:00 PM - -
-
- Get off at - - SE Hawthorne & 27th - - (2613) at - - 4:04 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 479 feet to - - 1415 SE 28th Ave, Portland, OR, USA 97214 - - -
-
- - Head - WEST - on - - SE Hawthorne Blvd - - - 40 feet - - -
-
- - RIGHT - on - - SE 27th Ave - - - 294 feet - - -
-
- - RIGHT - on - - SE Madison St - - - 146 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Walk Transit Transfer With A 11 Y Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Walk Transit Transfer With A 11 Y Itinerary 2`] = ` -.c7 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c20 { - font-weight: 200; -} - -.c11 { - font-weight: inherit; -} - -.c16 { - font-weight: 500; -} - -.c17 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c6 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - border: 1px solid #333; - background-color: transparent; - border-radius: 20px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-box-pack: justify; - -webkit-justify-content: space-between; - -ms-flex-pack: justify; - justify-content: space-between; - margin-top: 0.25em; - max-width: 75px; - height: 30px; - padding: 0.25em 0.6em 0.25em 0.4em; - word-wrap: anywhere; -} - -.c8 { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -} - -.c8 span { - display: block; -} - -.c9 { - padding-top: 3px; - font-weight: 600; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c13 { - font-size: 14px; - margin-top: 3px; -} - -.c12 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c10 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c14 .c15 { - font-weight: bold; -} - -.c18 { - font-weight: bold; -} - -.c18 .c19 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - 3940 SE Brooklyn St, Portland, OR, USA 97202 - -
-
-
-
-
-
- - - -
-
- - - - ✅ - - -
-
-
- - Walk 238 feet to - - SE Cesar Chavez Blvd & Brooklyn (long address that spans multiple lines) - - -
-
- - Head - WEST - on - - SE Brooklyn St - - - 205 feet - - -
-
- - RIGHT - on - - SE Cesar E. Chavez Blvd - - - 33 feet - - -
-
-
-
-
-
-
- - - -
-
- - - - ? - - -
-
-
-
- - 755X - - - - Cesar Chavez/Lombard (very long route name) - - to - - St. Johns via NAYA - -
-
-
- Board at - - SE Cesar Chavez Blvd & Brooklyn - - (7439) at - - 3:47 PM - -
-
- Get off at - - SE Cesar Chavez Blvd & Hawthorne - - (7459) at - - 3:52 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 440 feet to - - SE Hawthorne & Cesar Chavez Blvd - - -
-
- - Head - SOUTH - on - - service road - - - 146 feet - - -
-
- - RIGHT - on - - SE Cesar E. Chavez Blvd - - - 198 feet - - -
-
- - LEFT - on - - SE Hawthorne Blvd - - - 96 feet - - -
-
-
-
-
-
-
- - - -
-
- - - - ❌ - - -
-
-
-
- - 1 - - - - Hawthorne - - to - - Portland - -
-
-
- Board at - - SE Hawthorne & Cesar Chavez Blvd - - (2626) at - - 4:00 PM - -
-
- Get off at - - SE Hawthorne & 27th - - (2613) at - - 4:04 PM - -
-
-
-
-
-
-
- - - -
-
- - - - ❌ - - -
-
-
- - Walk 479 feet to - - 1415 SE 28th Ave, Portland, OR, USA 97214 - - -
-
- - Head - WEST - on - - SE Hawthorne Blvd - - - 40 feet - - -
-
- - RIGHT - on - - SE 27th Ave - - - 294 feet - - -
-
- - RIGHT - on - - SE Madison St - - - 146 feet - - -
-
-
-
-
-`; - -exports[`Storyshots PrintableItinerary Walk Transit Walk Itinerary 1`] = ` - - - -`; - -exports[`Storyshots PrintableItinerary Walk Transit Walk Itinerary 2`] = ` -.c16 { - font-weight: 200; -} - -.c7 { - font-weight: inherit; -} - -.c12 { - font-weight: 500; -} - -.c13 { - font-weight: 200; - opacity: 0.8975; - padding-left: 1ch; -} - -.c0 { - margin-bottom: 10px; - border-top: 1px solid grey; - padding-top: 18px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; -} - -.c1 { - border-top: none; - padding-top: 0; -} - -.c2 { - margin-left: 10px; -} - -.c9 { - font-size: 14px; - margin-top: 3px; -} - -.c8 { - margin-top: 5px; -} - -.c3 { - font-size: 18px; -} - -.c6 { - font-size: 18px; -} - -.c4 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: 100%; - min-width: 70px; -} - -.c10 .c11 { - font-weight: bold; -} - -.c14 { - font-weight: bold; -} - -.c14 .c15 { - font-weight: normal; -} - -.c5 { - float: left; - width: 32px; - height: 32px; -} - -
-
-
-
- - Depart - - from - - KGW Studio on the Sq, Portland, OR, USA - -
-
-
-
-
-
- - - -
-
-
- - Walk 269 feet to - - Pioneer Square North MAX Station - - -
-
- - Head - NORTHWEST - on - - Unnamed Path - - - 167 feet - - -
-
- - LEFT - on - - Pioneer Sq N (path) - - - 101 feet - - -
-
-
-
-
-
-
- - - -
-
-
-
- - - - MAX Blue Line - - to - - Hillsboro - -
-
-
- Board at - - Pioneer Square North MAX Station - - (8383) at - - 3:46 PM - -
-
- Get off at - - Providence Park MAX Station - - (9757) at - - 3:49 PM - -
-
-
-
-
-
-
- - - -
-
-
- - Walk 249 feet to - - 1737 SW Morrison St, Portland, OR, USA 97205 - - -
-
- - Head - WEST - on - - Providence Park (path) - - - 19 feet - - -
-
- - RIGHT - on - - Unnamed Path - - - 104 feet - - -
-
- - RIGHT - on - - Unnamed Path - - - 27 feet - - -
-
- - RIGHT - on - - SW Morrison St - - - 99 feet - - -
-
-
-
-
-`; - -exports[`Storyshots RouteViewerOverlay Default 1`] = ` - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Default 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay Flex Route 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Flex Route 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay Flex Route 2 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Flex Route 2 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay Flex Route 3 1`] = ` - - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Flex Route 3 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay OTP 2 Route Outside Of Initial View 1`] = ` - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay OTP 2 Route Outside Of Initial View 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay With Changing Path 1`] = ` - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay With Changing Path 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay With Path Styling 1`] = ` - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay With Path Styling 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel 1`] = ` - -
- - -
-
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel 2`] = ` -.c6 { - font-weight: normal; - padding-left: 6px; -} - -.c0 { - padding: 0px 5px; - box-sizing: border-box; -} - -.c0 > * { - width: 100%; -} - -.c3 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c5 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c1 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c1 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c4 { - font-size: 70%; -} - -.c4.disabled { - color: #686868; -} - -.c2 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c2 svg, -.c2 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c2.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c2.disabled { - cursor: default; -} - -.c2.disabled svg { - fill: #ccc; -} - -.c7 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c7 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -
-
-
-
-
- -
-
-
-
- -
- Transports + Marche -
-
-
- -
- Transports + Vélo personnel -
-
-
- -
- Transports + Biketown -
-
-
- -
- Transports + Trottinette électrique -
-
-
- -
- Parc relais -
-
-
- -
- Transports + Uber -
-
-
- -
- Transports + ReachNow -
-
-
- -
- Transports + Car2Go -
-
-
-
-
- -
-
- -
-
- -
-
-
-
- Travel Preferences -
-
- -
-
- -
-
- -
-
- -
-
- -
-
-
-
-
-
- -
-
- -
-
-
-
- -
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Custom Icons 1`] = ` - -
- - -
-
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Custom Icons 2`] = ` -.c6 { - font-weight: normal; - padding-left: 6px; -} - -.c0 { - padding: 0px 5px; - box-sizing: border-box; -} - -.c0 > * { - width: 100%; -} - -.c3 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c5 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c1 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c1 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c4 { - font-size: 70%; -} - -.c4.disabled { - color: #686868; -} - -.c2 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c2 svg, -.c2 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c2.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c2.disabled { - cursor: default; -} - -.c2.disabled svg { - fill: #ccc; -} - -.c7 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c7 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -
-
-
-
-
- -
-
-
-
- -
- Transports + Marche -
-
-
- -
- Transports + Vélo personnel -
-
-
- -
- Transports + Biketown -
-
-
- -
- Transports + Trottinette électrique -
-
-
- -
- Parc relais -
-
-
- -
- Transports + Uber -
-
-
- -
- Transports + ReachNow -
-
-
- -
- Transports + Car2Go -
-
-
-
-
- -
-
- -
-
- -
-
-
-
- Travel Preferences -
-
- -
-
- -
-
- -
-
- -
-
- -
-
-
-
-
-
- -
-
- -
-
-
-
- -
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 1`] = ` - -
- - -
-
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 2`] = ` -.c5 { - font-weight: normal; - padding-left: 6px; -} - -.c0 { - padding: 0px 5px; - box-sizing: border-box; -} - -.c0 > * { - width: 100%; -} - -.c3 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c1 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c1 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c2 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c2 svg, -.c2 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c2.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c2.disabled { - cursor: default; -} - -.c2.disabled svg { - fill: #ccc; -} - -.c4 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c4 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -
-
-
-
-
- -
-
-
-
-
- Travel Preferences -
-
-
-
- -
-
- -
-
-
-
- -
-`; - -exports[`Storyshots StopViewerOverlay Default 1`] = ` - - - - - - - -`; - -exports[`Storyshots StopViewerOverlay Default 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots StopViewerOverlay With Custom Marker 1`] = ` - - - - - - - -`; - -exports[`Storyshots StopViewerOverlay With Custom Marker 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots StopsOverlay Default 1`] = ` - - - - - - - -`; - -exports[`Storyshots StopsOverlay Default 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots StopsOverlay Flex Stops 1`] = ` - - - - - - - - - - - -`; - -exports[`Storyshots StopsOverlay Flex Stops 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots StopsOverlay No Min Zoom 1`] = ` - - - - - - With MapLibreGL, strong performance can be achieved without needing to rely on minZoom - - - - - - -`; - -exports[`Storyshots StopsOverlay No Min Zoom 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Default 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Default 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Inner Caret 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Inner Caret 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Route Color Background 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Route Color Background 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Bike Only Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Bike Only Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Bike Rental Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Bike Rental Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Bike Rental Transit Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Bike Rental Transit Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Bike Transit Bike Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Bike Transit Bike Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay E Scooter Rental Itinerary 1`] = ` - - - - - - - [Function] - - - - - - -`; - -exports[`Storyshots TransitiveOverlay E Scooter Rental Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay E Scooter Rental Transit Itinerary 1`] = ` - - - - - - - [Function] - - - - - - -`; - -exports[`Storyshots TransitiveOverlay E Scooter Rental Transit Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Empty 1`] = ` - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Empty 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Flex Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Flex Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay OTP 2 Scooter Itinerary 1`] = ` - - - - - - - [Function] - - - - - - -`; - -exports[`Storyshots TransitiveOverlay OTP 2 Scooter Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Park And Ride Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Park And Ride Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Tnc Transit Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Tnc Transit Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Walk Interlined Transit Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Walk Interlined Transit Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Walk Transit Transfer Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Walk Transit Transfer Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary With No Intermediate Stops 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary With No Intermediate Stops 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TransitiveOverlay Walking Itinerary 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots TransitiveOverlay Walking Itinerary 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots Trip Form Components Checkbox Selector 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Checkbox Selector 2`] = ` -Array [ -

- Plain -

, - .c1 { - font-weight: normal; - padding-left: 6px; -} - -.c2 .c0 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -
-
- - -
-
, -

- Styled -

, - .c2 { - font-weight: normal; - padding-left: 6px; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c1 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -
-
-
- - -
-
-
, -] -`; - -exports[`Storyshots Trip Form Components Date Time Selector 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Date Time Selector 2`] = ` -Array [ -

- Plain -

, - .c0 { - box-sizing: border-box; -} - -.c0 > * { - box-sizing: border-box; - width: 33.333333%; - padding: 0px 5px; -} - -.c2 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c2 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c4 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c4 svg, -.c4 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c4.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c4.disabled { - cursor: default; -} - -.c4.disabled svg { - fill: #ccc; -} - -.c5 .c1 { - background: #eee; -} - -.c5 .c3 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c5 .c3.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -
-
-
-
- -
-
- -
-
- -
-
-
-
, -

- Styled -

, - .c1 { - box-sizing: border-box; -} - -.c1 > * { - box-sizing: border-box; - width: 33.333333%; - padding: 0px 5px; -} - -.c3 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c3 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c5 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c5 svg, -.c5 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c5.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c5.disabled { - cursor: default; -} - -.c5.disabled svg { - fill: #ccc; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c2 { - background: #eee; -} - -.c0 .c4 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c0 .c4.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -
-
-
-
-
- -
-
- -
-
- -
-
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components Dropdown Selector 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Dropdown Selector 2`] = ` -Array [ -

- Plain -

, - .c3 { - font-weight: normal; - padding-left: 6px; -} - -.c1 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c1 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c4 .c2 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c4 .c0 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c4 .c0 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} - -
-
-
- -
-
- -
-
-
, -

- Styled -

, - .c4 { - font-weight: normal; - padding-left: 6px; -} - -.c2 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c2 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c3 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c0 .c1 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c0 .c1 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} - -
-
-
-
- -
-
- -
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components General Settings Panel 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components General Settings Panel 2`] = ` -Array [ -

- Plain -

, - .c3 { - font-weight: normal; - padding-left: 6px; -} - -.c1 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c1 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c4 .c2 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c4 .c0 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c4 .c0 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} - -
-
-
-
- -
-
- -
-
-
-
, -

- Styled -

, - .c4 { - font-weight: normal; - padding-left: 6px; -} - -.c2 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c2 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c3 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c0 .c1 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c0 .c1 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} - -
-
-
-
-
- -
-
- -
-
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components General Settings Panel With Custom Messages 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components General Settings Panel With Custom Messages 2`] = ` -Array [ -

- Plain -

, - .c3 { - font-weight: normal; - padding-left: 6px; -} - -.c1 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c1 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c4 .c2 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c4 .c0 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c4 .c0 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} - -
-
-
-
- -
-
- -
-
-
-
, -

- Styled -

, - .c4 { - font-weight: normal; - padding-left: 6px; -} - -.c2 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c2 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c3 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c0 .c1 select { - -webkit-appearance: none; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - margin-bottom: 15px; - background: none; - padding: 6px 12px; - border: none; - border-bottom: 1px solid #fff; - height: 34px; - box-shadow: none; - line-height: 1.42857; - color: #fff; -} - -.c0 .c1 > div:last-child::after { - content: "▼"; - font-size: 75%; - color: #fff; - right: 8px; - top: 10px; - position: absolute; - pointer-events: none; - box-sizing: border-box; -} - -
-
-
-
-
- -
-
- -
-
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components General Settings Panel With Otp 2 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components General Settings Panel With Otp 2 2`] = ` -Array [ -

- Plain -

, - .c2 { - font-weight: normal; - padding-left: 6px; -} - -.c0 > div { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - box-sizing: border-box; - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - gap: 10px; - position: relative; - width: 100%; -} - -.c0 > div > label { - display: block; - white-space: pre; -} - -.c0 input { - box-sizing: border-box; - cursor: pointer; - width: 100%; -} - -.c3 .c1 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -
-
-
-
- - - -
-
-
-
, -

- Styled -

, - .c3 { - font-weight: normal; - padding-left: 6px; -} - -.c1 > div { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - box-sizing: border-box; - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - gap: 10px; - position: relative; - width: 100%; -} - -.c1 > div > label { - display: block; - white-space: pre; -} - -.c1 input { - box-sizing: border-box; - cursor: pointer; - width: 100%; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c2 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -
-
-
-
-
- - - -
-
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components Mode Buttons 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Mode Buttons 2`] = ` -Array [ -

- Plain -

, - .c1 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c1 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c5 { - font-size: 70%; -} - -.c5.disabled { - color: #686868; -} - -.c3 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c3 svg, -.c3 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c3.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c3.disabled { - cursor: default; -} - -.c3.disabled svg { - fill: #ccc; -} - -.c6 .c0 { - background: #eee; -} - -.c6 .c2 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c6 .c2.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -.c6 .c4 { - padding: 4px 0px 0px; - font-size: 10px; - line-height: 12px; -} - -.c6 .c4.active { - -webkit-text-decoration: underline; - text-decoration: underline; -} - -
-
-
-
- -
- Normal -
-
- -
- -
- Active -
-
- -
- -
- Disabled -
-
-
-
-
- -
-
-
-
, -

- Styled -

, - .c2 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c2 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c6 { - font-size: 70%; -} - -.c6.disabled { - color: #686868; -} - -.c4 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c4 svg, -.c4 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c4.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c4.disabled { - cursor: default; -} - -.c4.disabled svg { - fill: #ccc; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c1 { - background: #eee; -} - -.c0 .c3 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c0 .c3.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -.c0 .c5 { - padding: 4px 0px 0px; - font-size: 10px; - line-height: 12px; -} - -.c0 .c5.active { - -webkit-text-decoration: underline; - text-decoration: underline; -} - -
-
-
-
-
- -
- Normal -
-
- -
- -
- Active -
-
- -
- -
- Disabled -
-
-
-
-
- -
-
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components Mode Selector 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Mode Selector 2`] = ` -Array [ -

- Plain -

, - .c1 { - padding: 0px 5px; - box-sizing: border-box; -} - -.c1 > * { - width: 100%; -} - -.c9 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c11 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c3 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c3 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c7 { - font-size: 70%; -} - -.c7.disabled { - color: #686868; -} - -.c5 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c5 svg, -.c5 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c5.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c5.disabled { - cursor: default; -} - -.c5.disabled svg { - fill: #ccc; -} - -.c12 .c2 { - background: #eee; -} - -.c12 .c4 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c12 .c4.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -.c12 .c6 { - padding: 4px 0px 0px; - font-size: 10px; - line-height: 12px; -} - -.c12 .c6.active { - -webkit-text-decoration: underline; - text-decoration: underline; -} - -.c12 .c0 { - padding: 0px 5px; - font-size: 200%; - margin-bottom: 18px; - box-sizing: border-box; -} - -.c12 .c0 > * { - width: 100%; - height: 55px; -} - -.c12 .c8 { - margin-bottom: 10px; -} - -.c12 .c8 > * { - font-size: 150%; - height: 46px; -} - -.c12 .c10 { - font-size: 90%; - margin-bottom: 10px; - text-align: center; -} - -.c12 .c10 > * { - height: 36px; -} - -
-
-
-
- -
- Primary Choice -
-
-
-
-
- -
- Secondary 1 -
-
-
- -
-
-
-
- -
- Other Mode -
-
-
-
-
, -

- Styled -

, - .c2 { - padding: 0px 5px; - box-sizing: border-box; -} - -.c2 > * { - width: 100%; -} - -.c10 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c12 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c4 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c4 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c8 { - font-size: 70%; -} - -.c8.disabled { - color: #686868; -} - -.c6 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c6 svg, -.c6 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c6.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c6.disabled { - cursor: default; -} - -.c6.disabled svg { - fill: #ccc; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c3 { - background: #eee; -} - -.c0 .c5 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c0 .c5.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -.c0 .c7 { - padding: 4px 0px 0px; - font-size: 10px; - line-height: 12px; -} - -.c0 .c7.active { - -webkit-text-decoration: underline; - text-decoration: underline; -} - -.c0 .c1 { - padding: 0px 5px; - font-size: 200%; - margin-bottom: 18px; - box-sizing: border-box; -} - -.c0 .c1 > * { - width: 100%; - height: 55px; -} - -.c0 .c9 { - margin-bottom: 10px; -} - -.c0 .c9 > * { - font-size: 150%; - height: 46px; -} - -.c0 .c11 { - font-size: 90%; - margin-bottom: 10px; - text-align: center; -} - -.c0 .c11 > * { - height: 36px; -} - -
-
-
-
-
- -
- Primary Choice -
-
-
-
-
- -
- Secondary 1 -
-
-
- -
-
-
-
- -
- Other Mode -
-
-
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components Slider Selector 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Slider Selector 2`] = ` -Array [ -

- Plain -

, - .c2 { - font-weight: normal; - padding-left: 6px; -} - -.c0 > div { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - box-sizing: border-box; - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - gap: 10px; - position: relative; - width: 100%; -} - -.c0 > div > label { - display: block; - white-space: pre; -} - -.c0 input { - box-sizing: border-box; - cursor: pointer; - width: 100%; -} - -.c3 .c1 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -
-
-
- - - -
-
-
, -

- Styled -

, - .c3 { - font-weight: normal; - padding-left: 6px; -} - -.c1 > div { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - box-sizing: border-box; - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - gap: 10px; - position: relative; - width: 100%; -} - -.c1 > div > label { - display: block; - white-space: pre; -} - -.c1 input { - box-sizing: border-box; - cursor: pointer; - width: 100%; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c2 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -
-
-
-
- - - -
-
-
-
, -] -`; - -exports[`Storyshots Trip Form Components Submode Selector 1`] = ` - - -

- Plain -

-
- -
-

- Styled -

-
- - - -
-
-
-`; - -exports[`Storyshots Trip Form Components Submode Selector 2`] = ` -Array [ -

- Plain -

, - .c1 { - font-weight: normal; - padding-left: 6px; -} - -.c3 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c3 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c5 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c5 svg, -.c5 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c5.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c5.disabled { - cursor: default; -} - -.c5.disabled svg { - fill: #ccc; -} - -.c6 .c0 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c6 .c2 { - background: #eee; -} - -.c6 .c4 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c6 .c4.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -
-
- -
-
- -
-
- -
-
- -
-
-
-
, -

- Styled -

, - .c2 { - font-weight: normal; - padding-left: 6px; -} - -.c4 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c4 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c6 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c6 svg, -.c6 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c6.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c6.disabled { - cursor: default; -} - -.c6.disabled svg { - fill: #ccc; -} - -.c0 { - font-family: Hind,sans-serif; - background-color: #333; - padding: 15px; -} - -.c0 .c1 { - padding-top: 8px; - color: #fff; - font-weight: 100; -} - -.c0 .c3 { - background: #eee; -} - -.c0 .c5 { - border: 1px solid rgb(187,187,187); - padding: 3px; - border-radius: 3px; - font-size: inherit; - font-family: inherit; - font-weight: inherit; - background: none; - outline: none; -} - -.c0 .c5.active { - border: 2px solid rgb(0,0,0); - background-color: rgb(173,216,230); - font-weight: 600; - box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); -} - -
-
-
- -
-
- -
-
- -
-
- -
-
-
-
-
, -] -`; - -exports[`Storyshots TripDetails Bike Only Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Bike Only Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c9 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - November 13, 2019 - - at - - 3:42 PM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 7 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 0 minutes - - walking and - - 7 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 19g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails Fare Leg Table Story Leg Products 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Fare Leg Table Story Leg Products 2`] = ` -.c2 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c1 th { - font-weight: normal; - min-width: 5ch; - padding: 0.75em 1.5em; - text-align: center; -} - -.c1 th:nth-of-type(2n + 1) { - background: #cccccc22; -} - -.c1 th.main { - background: #333333; - color: #ffffffcc; -} - -.c0 { - border-collapse: collapse; - display: block; - margin-bottom: 16px; - padding: 0; -} - -.c0 td { - text-align: right; -} - -.c0 td:nth-of-type(2n + 1) { - background: #cccccc22; -} - -.c0 td.no-zebra { - background: none; -} - -.c0 th:first-of-type { - height: 40px; -} - -.c3 { - padding-left: 4px; -} - -
- - - - - - - - - - - - - - - - - - - -
- - otpUi.TripDetails.FareTable.regular - - - - otpUi.TripDetails.FareTable.cash - -
- $5.75 -
- - otpUi.TripDetails.FareTable.electronic - -
- $3.00 -
- - otpUi.TripDetails.FareTable.special - -
- $1.50 -
- 347 - - $2.75 - - $2.75 - - $1.50 -
- 1-Line - - $3.00 - - - - $0.25 - - - - $0.00 -
- - - - - - - - - - - - - - - - -
- - otpUi.TripDetails.FareTable.youth - - - - otpUi.TripDetails.FareTable.cash - -
- $0.00 -
- - otpUi.TripDetails.FareTable.electronic - -
- $0.00 -
- 347 - - $0.00 - - $0.00 -
- 1-Line - - $0.00 - - $0.00 -
- - - - - - - - - - - - - - - - -
- - otpUi.TripDetails.FareTable.senior - - - - otpUi.TripDetails.FareTable.cash - -
- $2.00 -
- - otpUi.TripDetails.FareTable.electronic - -
- $1.00 -
- 347 - - $1.00 - - $1.00 -
- 1-Line - - $1.00 - - - - $0.00 -
-
-`; - -exports[`Storyshots TripDetails Leg Fare Products Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Leg Fare Products Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c13 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c9 { - display: inline-block; -} - -.c9 > span { - display: block; - padding-left: 1.75ch; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -.c11 th { - font-weight: normal; - min-width: 5ch; - padding: 0.75em 1.5em; - text-align: center; -} - -.c11 th:nth-of-type(2n + 1) { - background: #cccccc22; -} - -.c11 th.main { - background: #333333; - color: #ffffffcc; -} - -.c10 { - border-collapse: collapse; - display: block; - margin-bottom: 16px; - padding: 0; -} - -.c10 td { - text-align: right; -} - -.c10 td:nth-of-type(2n + 1) { - background: #cccccc22; -} - -.c10 td.no-zebra { - background: none; -} - -.c10 th:first-of-type { - height: 40px; -} - -.c12 { - padding-left: 4px; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - May 26, 2023 - - at - - 3:23 PM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- -
- - Transit Fare - : - - $5.75 - - -
- - - - - - - - - - - - - - - - - -
- - otpUi.TripDetails.FareTable.regular - - - - otpUi.TripDetails.FareTable.cash - -
- $5.75 -
- - otpUi.TripDetails.FareTable.electronic - -
- $3.00 -
- - otpUi.TripDetails.FareTable.special - -
- $1.50 -
- - $2.75 - - $2.75 - - $1.50 -
- - $3.00 - - - - $0.25 - - - - $0.00 -
- - - - - - - - - - - - - - -
- - otpUi.TripDetails.FareTable.youth - - - - otpUi.TripDetails.FareTable.cash - -
- $0.00 -
- - otpUi.TripDetails.FareTable.electronic - -
- $0.00 -
- - $0.00 - - $0.00 -
- - $0.00 - - $0.00 -
- - - - - - - - - - - - - - -
- - otpUi.TripDetails.FareTable.senior - - - - otpUi.TripDetails.FareTable.cash - -
- $2.00 -
- - otpUi.TripDetails.FareTable.electronic - -
- $1.00 -
- - $1.00 - - $1.00 -
- - $1.00 - - - - $0.00 -
-
-
-
-
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 41 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 41 minutes - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 2,699g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails OTP 2 E Scooter Rental Transit Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails OTP 2 E Scooter Rental Transit Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c9 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - June 15, 2022 - - at - - 9:15 AM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 5 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 5 minutes - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 7g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails OTP 2 Flex Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails OTP 2 Flex Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c9 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - June 22, 2022 - - at - - 4:59 PM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 12 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 12 minutes - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 4,682g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
- -
-
- - This trip includes flexible routes. This is the first pickup booking info message. This is the first dropoff booking info message. - -
-
-
-
- -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails Styled Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Styled Itinerary 2`] = ` -.c6 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c9 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c11 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c10 { - float: right; -} - -.c4 { - margin-top: 6px; -} - -.c8 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c5 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c3 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c7 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -.c1 .c2 { - background-color: pink; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - November 13, 2019 - - at - - 3:44 PM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 2 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 2 minutes - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 61g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails Tnc Transit Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Tnc Transit Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c10 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c9 { - text-transform: capitalize; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - May 23, 2023 - - at - - 10:58 AM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- - - - uber - - Fare: - - $34.00 - - - $37.00 - - - - -
-
-
-
- - Custom details about fares (transitFares: - ) - - (cents), can be constructed dynamically using any markup. -
-
-
-
-
-
- -
-
- Time Spent Active: - - 2 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 2 minutes - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 319g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails Tnc Transit Itinerary With Custom Messages 1`] = ` -Leave at {departureDate, time, short} on {departureDate, date, long}", - "otpUi.TripDetails.title": "Custom Trip Details Title", - "otpUi.TripDetails.tncFare": "Pay {minTNCFare}-{maxTNCFare} to {companies}", - } - } - onError={[Function]} - textComponent={Symbol(react.fragment)} -> - - -`; - -exports[`Storyshots TripDetails Tnc Transit Itinerary With Custom Messages 2`] = ` -.c6 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c8 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c9 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c11 { - float: right; -} - -.c12 { - text-transform: capitalize; -} - -.c4 { - margin-top: 6px; -} - -.c10 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c5 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c3 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c7 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -.c1 .c2 { - background-color: pink; -} - -
-

- Custom Trip Details Title -

-
-
-
- -
-
- - - Leave - - at - - 10:58 AM - - on - - May 23, 2023 - - - -
-
-
-
- - Custom messages about - - May 23, 2023 - - can be constructed dynamically using any markup. -
-
-
-
-
-
- -
-
- - - Pay - - $34.00 - - - $37.00 - - to - - uber - - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 2 minutes - - -
-
-
-
- - Custom message about - active minutes. -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 319g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails Walk Only Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Walk Only Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c9 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - December 13, 2019 - - at - - 11:29 AM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 1 minute - - -
-
-
-
- - By taking this trip, you'll spend - - 1 minute - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 1g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripDetails Walk Transit Walk Itinerary 1`] = ` - - - -`; - -exports[`Storyshots TripDetails Walk Transit Walk Itinerary 2`] = ` -.c4 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c7 { - background: transparent; - border: 0; - cursor: pointer; - display: inline-block; - font-size: 14px; - font-weight: 400; - line-height: 1.42857143; - margin: 0; - padding: 0; - -webkit-text-decoration: none; - text-decoration: none; - touch-action: manipulation; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - vertical-align: middle; - white-space: nowrap; -} - -.c9 { - color: #00f; - font-size: 16px; - margin-left: 6px; - margin-top: -2px; -} - -.c8 { - float: right; -} - -.c2 { - margin-top: 6px; -} - -.c6 { - background-color: #fff; - border: 1px solid #888; - font-size: 12px; - margin-top: 2px; - padding: 8px; -} - -.c3 { - float: left; - font-size: 17px; -} - -.c0 { - background-color: #eee; - border-radius: 6px; - margin-bottom: 15px; - margin-top: 16px; - padding: 10px 16px; -} - -.c1 { - font-size: 18px; - font-weight: 600; - margin: 0; -} - -.c5 { - margin-left: 28px; - padding-top: 2px; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-align-items: baseline; - -webkit-box-align: baseline; - -ms-flex-align: baseline; - align-items: baseline; - white-space: pre; -} - -
-

- Trip Details -

-
-
-
- -
-
- - Depart - - November 13, 2019 - - at - - 3:44 PM - - -
-
-
-
- -
-
-
-
-
-
- -
-
- Time Spent Active: - - 2 minutes - - -
-
-
-
- - By taking this trip, you'll spend - - 2 minutes - - walking and - - 0 minutes - - biking. - -
-
-
-
-
-
- -
-
- - CO₂ Emitted: - - 61g - - - -
-
-
-
- - CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from - - this spreadsheet - - . -
-
-
-
-
-
-`; - -exports[`Storyshots TripOptions Company First Mixed Category 1`] = ` - - - - - -`; - -exports[`Storyshots TripOptions Company First Mixed Category 2`] = ` -.c3 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c13 { - font-weight: normal; - padding-left: 6px; -} - -.c12 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c12 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c0 { - background-color: #0d5eac; - color: white; - font-weight: 40; - max-width: 992px; - min-height: 400px; -} - -.c11 { - max-width: 700px; - padding: 12px; -} - -.c14 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - gap: 20px; -} - -.c14 > button { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -} - -.c5 { - border-radius: 50%; - height: 2.5em; - margin-bottom: 10px; - width: 2.5em; - z-index: 10; - background-color: rgb(84,174,88); - color: white; -} - -.c9 { - border-radius: 50%; - height: 2.5em; - margin-bottom: 10px; - width: 2.5em; - z-index: 10; -} - -.c16 { - max-width: 100%; -} - -.c7 ~ .c4, -.c7 ~ .c8 { - height: 1.5em; - margin-bottom: -1em; - position: relative; - right: -30px; - top: -50px; - width: 1.5em; -} - -.c7 svg { - fill: white; - height: 3em; - position: relative; - width: 3em; -} - -.c2 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 77px; - opacity: 1; - padding: 20px 0px; - white-space: pre-wrap; -} - -.c6 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 50px; - opacity: 0.65; - padding: 20px 0px; - white-space: pre-wrap; -} - -.c10 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 77px; - opacity: 0.65; - padding: 20px 0px; - white-space: pre-wrap; -} - -.c15 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 77px; - opacity: 1; - padding: 20px 0px; - white-space: pre-wrap; - margin: 20px 0; - position: relative; -} - -.c15 .c8 { - background: #0d5eac; -} - -.c15 .c4, -.c15 .c8 { - position: absolute; - right: 5.5%; - top: 11%; -} - -.c1 { - background-color: #0a4c8d; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - overflow-x: scroll; - padding: 0 12px; - -ms-overflow-style: none; - -webkit-scrollbar-width: none; - -moz-scrollbar-width: none; - -ms-scrollbar-width: none; - scrollbar-width: none; -} - -.c1 > button { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-pack: justify; - -webkit-justify-content: space-between; - -ms-flex-pack: justify; - justify-content: space-between; - margin-right: 24px; -} - -.c1:hover > button:hover { - opacity: 1; -} - -.c1:hover > button:hover svg { - opacity: 1; -} - -.c1::-webkit-scrollbar { - display: none; -} - -@media (max-width:768px) { - .c15 .c4, - .c15 .c8 { - max-height: 20px; - max-width: 20px; - } -} - -
-
- - - - - - -
-
-
-
-
- -
-
- -
-
-
-
- - - -
-
-
-`; - -exports[`Storyshots TripOptions Default 1`] = ` - - - - - -`; - -exports[`Storyshots TripOptions Default 2`] = ` -.c3 { - display: inline-block; - vertical-align: middle; - overflow: hidden; -} - -.c13 { - font-weight: normal; - padding-left: 6px; -} - -.c12 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c12 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -.c0 { - background-color: #0d5eac; - color: white; - font-weight: 40; - max-width: 992px; - min-height: 400px; -} - -.c11 { - max-width: 700px; - padding: 12px; -} - -.c14 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - gap: 20px; -} - -.c14 > button { - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -} - -.c5 { - border-radius: 50%; - height: 2.5em; - margin-bottom: 10px; - width: 2.5em; - z-index: 10; - background-color: rgb(84,174,88); - color: white; -} - -.c9 { - border-radius: 50%; - height: 2.5em; - margin-bottom: 10px; - width: 2.5em; - z-index: 10; -} - -.c16 { - max-width: 100%; -} - -.c7 ~ .c4, -.c7 ~ .c8 { - height: 1.5em; - margin-bottom: -1em; - position: relative; - right: -30px; - top: -50px; - width: 1.5em; -} - -.c7 svg { - fill: white; - height: 3em; - position: relative; - width: 3em; -} - -.c2 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 77px; - opacity: 1; - padding: 20px 0px; - white-space: pre-wrap; -} - -.c6 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 50px; - opacity: 0.65; - padding: 20px 0px; - white-space: pre-wrap; -} - -.c10 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 77px; - opacity: 0.65; - padding: 20px 0px; - white-space: pre-wrap; -} - -.c15 { - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - background-color: rgba(0,0,0,0); - border: none; - color: white; - cursor: pointer; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-width: 77px; - opacity: 1; - padding: 20px 0px; - white-space: pre-wrap; - margin: 20px 0; - position: relative; -} - -.c15 .c8 { - background: #0d5eac; -} - -.c15 .c4, -.c15 .c8 { - position: absolute; - right: 5.5%; - top: 11%; -} - -.c1 { - background-color: #0a4c8d; - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - overflow-x: scroll; - padding: 0 12px; - -ms-overflow-style: none; - -webkit-scrollbar-width: none; - -moz-scrollbar-width: none; - -ms-scrollbar-width: none; - scrollbar-width: none; -} - -.c1 > button { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-pack: justify; - -webkit-justify-content: space-between; - -ms-flex-pack: justify; - justify-content: space-between; - margin-right: 24px; -} - -.c1:hover > button:hover { - opacity: 1; -} - -.c1:hover > button:hover svg { - opacity: 1; -} - -.c1::-webkit-scrollbar { - display: none; -} - -@media (max-width:768px) { - .c15 .c4, - .c15 .c8 { - max-height: 20px; - max-width: 20px; - } -} - -
-
- - - - - - -
-
-
-
-
- -
-
- -
-
-
-
- - - -
-
-
-`; - -exports[`Storyshots TripViewerOverlay Default 1`] = ` - - - - - - - -`; - -exports[`Storyshots TripViewerOverlay Default 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots TripViewerOverlay With Path Styling 1`] = ` - - - - - - - -`; - -exports[`Storyshots TripViewerOverlay With Path Styling 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots VehicleRentalOverlay Rental Bicycles 1`] = ` - - - - - - - -`; - -exports[`Storyshots VehicleRentalOverlay Rental Bicycles 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots VehicleRentalOverlay Rental Bicycles Visibility Controlled By Knob 1`] = ` - - - - + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Flex Route 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Flex Route 2 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Flex Route 2 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Flex Route 3 1`] = ` + + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Flex Route 3 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay OTP 2 Route Outside Of Initial View 1`] = ` + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay OTP 2 Route Outside Of Initial View 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay With Changing Path 1`] = ` + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay With Changing Path 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay With Path Styling 1`] = ` + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay With Path Styling 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel 1`] = ` + +
+ + +
+
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel 2`] = ` +.c6 { + font-weight: normal; + padding-left: 6px; +} + +.c0 { + padding: 0px 5px; + box-sizing: border-box; +} + +.c0 > * { + width: 100%; +} + +.c3 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c5 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c1 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c1 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c4 { + font-size: 70%; +} + +.c4.disabled { + color: #686868; +} + +.c2 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c2 svg, +.c2 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c2.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c2.disabled { + cursor: default; +} + +.c2.disabled svg { + fill: #ccc; +} + +.c7 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c7 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +
+
+
+
+
+ +
+
+
+
+ +
+ Transports + Marche +
+
+
+ +
+ Transports + Vélo personnel +
+
+
+ +
+ Transports + Biketown +
+
+
+ +
+ Transports + Trottinette électrique +
+
+
+ +
+ Parc relais +
+
+
+ +
+ Transports + Uber +
+
+
+ +
+ Transports + ReachNow +
+
+
+ +
+ Transports + Car2Go +
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+ Travel Preferences +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+ +
+
+
+
+ +
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Custom Icons 1`] = ` + +
+ + +
+
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Custom Icons 2`] = ` +.c6 { + font-weight: normal; + padding-left: 6px; +} + +.c0 { + padding: 0px 5px; + box-sizing: border-box; +} + +.c0 > * { + width: 100%; +} + +.c3 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c5 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c1 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c1 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c4 { + font-size: 70%; +} + +.c4.disabled { + color: #686868; +} + +.c2 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c2 svg, +.c2 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c2.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c2.disabled { + cursor: default; +} + +.c2.disabled svg { + fill: #ccc; +} + +.c7 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c7 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +
+
+
+
+
+ +
+
+
+
+ +
+ Transports + Marche +
+
+
+ +
+ Transports + Vélo personnel +
+
+
+ +
+ Transports + Biketown +
+
+
+ +
+ Transports + Trottinette électrique +
+
+
+ +
+ Parc relais +
+
+
+ +
+ Transports + Uber +
+
+
+ +
+ Transports + ReachNow +
+
+
+ +
+ Transports + Car2Go +
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+ Travel Preferences +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+ +
+
+
+
+ +
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 1`] = ` + +
+ + +
+
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 2`] = ` +.c5 { + font-weight: normal; + padding-left: 6px; +} + +.c0 { + padding: 0px 5px; + box-sizing: border-box; +} + +.c0 > * { + width: 100%; +} + +.c3 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c1 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c1 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c2 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c2 svg, +.c2 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c2.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c2.disabled { + cursor: default; +} + +.c2.disabled svg { + fill: #ccc; +} + +.c4 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c4 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +
+
+
+
+
+ +
+
+
+
+
+ Travel Preferences +
+
+
+
+ +
+
+ +
+
+
+
+ +
+`; + +exports[`Storyshots StopViewerOverlay Default 1`] = ` + + + + + + + +`; + +exports[`Storyshots StopViewerOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopViewerOverlay With Custom Marker 1`] = ` + + + + + + + +`; + +exports[`Storyshots StopViewerOverlay With Custom Marker 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopsOverlay Default 1`] = ` + + + + + + + +`; + +exports[`Storyshots StopsOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopsOverlay Flex Stops 1`] = ` + + + + + + + + + + + +`; + +exports[`Storyshots StopsOverlay Flex Stops 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopsOverlay No Min Zoom 1`] = ` + + + + + + With MapLibreGL, strong performance can be achieved without needing to rely on minZoom + + + + + + +`; + +exports[`Storyshots StopsOverlay No Min Zoom 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Default 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Inner Caret 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Inner Caret 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Route Color Background 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Route Color Background 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots Trip Form Components Checkbox Selector 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Checkbox Selector 2`] = ` +Array [ +

+ Plain +

, + .c1 { + font-weight: normal; + padding-left: 6px; +} + +.c2 .c0 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +
+
+ + +
+
, +

+ Styled +

, + .c2 { + font-weight: normal; + padding-left: 6px; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c1 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +
+
+
+ + +
+
+
, +] +`; + +exports[`Storyshots Trip Form Components Date Time Selector 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Date Time Selector 2`] = ` +Array [ +

+ Plain +

, + .c0 { + box-sizing: border-box; +} + +.c0 > * { + box-sizing: border-box; + width: 33.333333%; + padding: 0px 5px; +} + +.c2 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c2 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c4 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c4 svg, +.c4 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c4.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c4.disabled { + cursor: default; +} + +.c4.disabled svg { + fill: #ccc; +} + +.c5 .c1 { + background: #eee; +} + +.c5 .c3 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c5 .c3.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +
+
+
+
+ +
+
+ +
+
+ +
+
+
+
, +

+ Styled +

, + .c1 { + box-sizing: border-box; +} + +.c1 > * { + box-sizing: border-box; + width: 33.333333%; + padding: 0px 5px; +} + +.c3 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c3 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c5 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c5 svg, +.c5 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c5.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c5.disabled { + cursor: default; +} + +.c5.disabled svg { + fill: #ccc; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c2 { + background: #eee; +} + +.c0 .c4 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c0 .c4.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components Dropdown Selector 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Dropdown Selector 2`] = ` +Array [ +

+ Plain +

, + .c3 { + font-weight: normal; + padding-left: 6px; +} + +.c1 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c1 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c4 .c2 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c4 .c0 select { + -webkit-appearance: none; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + margin-bottom: 15px; + background: none; + padding: 6px 12px; + border: none; + border-bottom: 1px solid #fff; + height: 34px; + box-shadow: none; + line-height: 1.42857; + color: #fff; +} + +.c4 .c0 > div:last-child::after { + content: "▼"; + font-size: 75%; + color: #fff; + right: 8px; + top: 10px; + position: absolute; + pointer-events: none; + box-sizing: border-box; +} + +
+
+
+ +
+
+ +
+
+
, +

+ Styled +

, + .c4 { + font-weight: normal; + padding-left: 6px; +} + +.c2 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c2 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c3 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c0 .c1 select { + -webkit-appearance: none; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + margin-bottom: 15px; + background: none; + padding: 6px 12px; + border: none; + border-bottom: 1px solid #fff; + height: 34px; + box-shadow: none; + line-height: 1.42857; + color: #fff; +} + +.c0 .c1 > div:last-child::after { + content: "▼"; + font-size: 75%; + color: #fff; + right: 8px; + top: 10px; + position: absolute; + pointer-events: none; + box-sizing: border-box; +} + +
+
+
+
+ +
+
+ +
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components General Settings Panel 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components General Settings Panel 2`] = ` +Array [ +

+ Plain +

, + .c3 { + font-weight: normal; + padding-left: 6px; +} + +.c1 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c1 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c4 .c2 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c4 .c0 select { + -webkit-appearance: none; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + margin-bottom: 15px; + background: none; + padding: 6px 12px; + border: none; + border-bottom: 1px solid #fff; + height: 34px; + box-shadow: none; + line-height: 1.42857; + color: #fff; +} + +.c4 .c0 > div:last-child::after { + content: "▼"; + font-size: 75%; + color: #fff; + right: 8px; + top: 10px; + position: absolute; + pointer-events: none; + box-sizing: border-box; +} + +
+
+
+
+ +
+
+ +
+
+
+
, +

+ Styled +

, + .c4 { + font-weight: normal; + padding-left: 6px; +} + +.c2 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c2 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c3 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c0 .c1 select { + -webkit-appearance: none; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + margin-bottom: 15px; + background: none; + padding: 6px 12px; + border: none; + border-bottom: 1px solid #fff; + height: 34px; + box-shadow: none; + line-height: 1.42857; + color: #fff; +} + +.c0 .c1 > div:last-child::after { + content: "▼"; + font-size: 75%; + color: #fff; + right: 8px; + top: 10px; + position: absolute; + pointer-events: none; + box-sizing: border-box; +} + +
+
+
+
+
+ +
+
+ +
+
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components General Settings Panel With Custom Messages 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components General Settings Panel With Custom Messages 2`] = ` +Array [ +

+ Plain +

, + .c3 { + font-weight: normal; + padding-left: 6px; +} + +.c1 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c1 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c4 .c2 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c4 .c0 select { + -webkit-appearance: none; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + margin-bottom: 15px; + background: none; + padding: 6px 12px; + border: none; + border-bottom: 1px solid #fff; + height: 34px; + box-shadow: none; + line-height: 1.42857; + color: #fff; +} + +.c4 .c0 > div:last-child::after { + content: "▼"; + font-size: 75%; + color: #fff; + right: 8px; + top: 10px; + position: absolute; + pointer-events: none; + box-sizing: border-box; +} + +
+
+
+
+ +
+
+ +
+
+
+
, +

+ Styled +

, + .c4 { + font-weight: normal; + padding-left: 6px; +} + +.c2 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c2 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c3 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c0 .c1 select { + -webkit-appearance: none; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + margin-bottom: 15px; + background: none; + padding: 6px 12px; + border: none; + border-bottom: 1px solid #fff; + height: 34px; + box-shadow: none; + line-height: 1.42857; + color: #fff; +} + +.c0 .c1 > div:last-child::after { + content: "▼"; + font-size: 75%; + color: #fff; + right: 8px; + top: 10px; + position: absolute; + pointer-events: none; + box-sizing: border-box; +} + +
+
+
+
+
+ +
+
+ +
+
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components General Settings Panel With Otp 2 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components General Settings Panel With Otp 2 2`] = ` +Array [ +

+ Plain +

, + .c2 { + font-weight: normal; + padding-left: 6px; +} + +.c0 > div { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + gap: 10px; + position: relative; + width: 100%; +} + +.c0 > div > label { + display: block; + white-space: pre; +} + +.c0 input { + box-sizing: border-box; + cursor: pointer; + width: 100%; +} + +.c3 .c1 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +
+
+
+
+ + + +
+
+
+
, +

+ Styled +

, + .c3 { + font-weight: normal; + padding-left: 6px; +} + +.c1 > div { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + gap: 10px; + position: relative; + width: 100%; +} + +.c1 > div > label { + display: block; + white-space: pre; +} + +.c1 input { + box-sizing: border-box; + cursor: pointer; + width: 100%; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c2 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +
+
+
+
+
+ + + +
+
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components Mode Buttons 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Mode Buttons 2`] = ` +Array [ +

+ Plain +

, + .c1 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c1 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c5 { + font-size: 70%; +} + +.c5.disabled { + color: #686868; +} + +.c3 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c3 svg, +.c3 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c3.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c3.disabled { + cursor: default; +} + +.c3.disabled svg { + fill: #ccc; +} + +.c6 .c0 { + background: #eee; +} + +.c6 .c2 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c6 .c2.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +.c6 .c4 { + padding: 4px 0px 0px; + font-size: 10px; + line-height: 12px; +} + +.c6 .c4.active { + -webkit-text-decoration: underline; + text-decoration: underline; +} + +
+
+
+
+ +
+ Normal +
+
+ +
+ +
+ Active +
+
+ +
+ +
+ Disabled +
+
+
+
+
+ +
+
+
+
, +

+ Styled +

, + .c2 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c2 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c6 { + font-size: 70%; +} + +.c6.disabled { + color: #686868; +} + +.c4 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c4 svg, +.c4 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c4.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c4.disabled { + cursor: default; +} + +.c4.disabled svg { + fill: #ccc; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c1 { + background: #eee; +} + +.c0 .c3 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c0 .c3.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +.c0 .c5 { + padding: 4px 0px 0px; + font-size: 10px; + line-height: 12px; +} + +.c0 .c5.active { + -webkit-text-decoration: underline; + text-decoration: underline; +} + +
+
+
+
+
+ +
+ Normal +
+
+ +
+ +
+ Active +
+
+ +
+ +
+ Disabled +
+
+
+
+
+ +
+
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components Mode Selector 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Mode Selector 2`] = ` +Array [ +

+ Plain +

, + .c1 { + padding: 0px 5px; + box-sizing: border-box; +} + +.c1 > * { + width: 100%; +} + +.c9 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c11 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c3 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c3 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c7 { + font-size: 70%; +} + +.c7.disabled { + color: #686868; +} + +.c5 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c5 svg, +.c5 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c5.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c5.disabled { + cursor: default; +} + +.c5.disabled svg { + fill: #ccc; +} + +.c12 .c2 { + background: #eee; +} + +.c12 .c4 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c12 .c4.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +.c12 .c6 { + padding: 4px 0px 0px; + font-size: 10px; + line-height: 12px; +} + +.c12 .c6.active { + -webkit-text-decoration: underline; + text-decoration: underline; +} + +.c12 .c0 { + padding: 0px 5px; + font-size: 200%; + margin-bottom: 18px; + box-sizing: border-box; +} + +.c12 .c0 > * { + width: 100%; + height: 55px; +} + +.c12 .c8 { + margin-bottom: 10px; +} + +.c12 .c8 > * { + font-size: 150%; + height: 46px; +} + +.c12 .c10 { + font-size: 90%; + margin-bottom: 10px; + text-align: center; +} + +.c12 .c10 > * { + height: 36px; +} + +
+
+
+
+ +
+ Primary Choice +
+
+
+
+
+ +
+ Secondary 1 +
+
+
+ +
+
+
+
+ +
+ Other Mode +
+
+
+
+
, +

+ Styled +

, + .c2 { + padding: 0px 5px; + box-sizing: border-box; +} + +.c2 > * { + width: 100%; +} + +.c10 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c12 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c4 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c4 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c8 { + font-size: 70%; +} + +.c8.disabled { + color: #686868; +} + +.c6 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c6 svg, +.c6 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c6.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c6.disabled { + cursor: default; +} + +.c6.disabled svg { + fill: #ccc; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c3 { + background: #eee; +} + +.c0 .c5 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c0 .c5.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +.c0 .c7 { + padding: 4px 0px 0px; + font-size: 10px; + line-height: 12px; +} + +.c0 .c7.active { + -webkit-text-decoration: underline; + text-decoration: underline; +} + +.c0 .c1 { + padding: 0px 5px; + font-size: 200%; + margin-bottom: 18px; + box-sizing: border-box; +} + +.c0 .c1 > * { + width: 100%; + height: 55px; +} + +.c0 .c9 { + margin-bottom: 10px; +} + +.c0 .c9 > * { + font-size: 150%; + height: 46px; +} + +.c0 .c11 { + font-size: 90%; + margin-bottom: 10px; + text-align: center; +} + +.c0 .c11 > * { + height: 36px; +} + +
+
+
+
+
+ +
+ Primary Choice +
+
+
+
+
+ +
+ Secondary 1 +
+
+
+ +
+
+
+
+ +
+ Other Mode +
+
+
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components Slider Selector 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Slider Selector 2`] = ` +Array [ +

+ Plain +

, + .c2 { + font-weight: normal; + padding-left: 6px; +} + +.c0 > div { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + gap: 10px; + position: relative; + width: 100%; +} + +.c0 > div > label { + display: block; + white-space: pre; +} + +.c0 input { + box-sizing: border-box; + cursor: pointer; + width: 100%; +} + +.c3 .c1 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +
+
+
+ + + +
+
+
, +

+ Styled +

, + .c3 { + font-weight: normal; + padding-left: 6px; +} + +.c1 > div { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + box-sizing: border-box; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + gap: 10px; + position: relative; + width: 100%; +} + +.c1 > div > label { + display: block; + white-space: pre; +} + +.c1 input { + box-sizing: border-box; + cursor: pointer; + width: 100%; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c2 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +
+
+
+
+ + + +
+
+
+
, +] +`; + +exports[`Storyshots Trip Form Components Submode Selector 1`] = ` + + +

+ Plain +

+
+ +
+

+ Styled +

+
+ + + +
+
+
+`; + +exports[`Storyshots Trip Form Components Submode Selector 2`] = ` +Array [ +

+ Plain +

, + .c1 { + font-weight: normal; + padding-left: 6px; +} + +.c3 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c3 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c5 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c5 svg, +.c5 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c5.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c5.disabled { + cursor: default; +} + +.c5.disabled svg { + fill: #ccc; +} + +.c6 .c0 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c6 .c2 { + background: #eee; +} + +.c6 .c4 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c6 .c4.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
, +

+ Styled +

, + .c2 { + font-weight: normal; + padding-left: 6px; +} + +.c4 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c4 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c6 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c6 svg, +.c6 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c6.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c6.disabled { + cursor: default; +} + +.c6.disabled svg { + fill: #ccc; +} + +.c0 { + font-family: Hind,sans-serif; + background-color: #333; + padding: 15px; +} + +.c0 .c1 { + padding-top: 8px; + color: #fff; + font-weight: 100; +} + +.c0 .c3 { + background: #eee; +} + +.c0 .c5 { + border: 1px solid rgb(187,187,187); + padding: 3px; + border-radius: 3px; + font-size: inherit; + font-family: inherit; + font-weight: inherit; + background: none; + outline: none; +} + +.c0 .c5.active { + border: 2px solid rgb(0,0,0); + background-color: rgb(173,216,230); + font-weight: 600; + box-shadow: inset 0 3px 5px rgba(0,0,0,0.125); +} + +
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+
, +] +`; + +exports[`Storyshots TripDetails Bike Only Itinerary 1`] = ` + + - - - -`; - -exports[`Storyshots VehicleRentalOverlay Rental Bicycles Visibility Controlled By Knob 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
+ `; -exports[`Storyshots VehicleRentalOverlay Rental Cars 1`] = ` - - - - +

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + November 13, 2019 + + at + + 3:42 PM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 7 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 0 minutes + + walking and + + 7 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 19g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails Fare Leg Table Story Leg Products 1`] = ` + + + +`; + +exports[`Storyshots TripDetails Fare Leg Table Story Leg Products 2`] = ` +.c2 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c1 th { + font-weight: normal; + min-width: 5ch; + padding: 0.75em 1.5em; + text-align: center; +} + +.c1 th:nth-of-type(2n + 1) { + background: #cccccc22; +} + +.c1 th.main { + background: #333333; + color: #ffffffcc; +} + +.c0 { + border-collapse: collapse; + display: block; + margin-bottom: 16px; + padding: 0; +} + +.c0 td { + text-align: right; +} + +.c0 td:nth-of-type(2n + 1) { + background: #cccccc22; +} + +.c0 td.no-zebra { + background: none; +} + +.c0 th:first-of-type { + height: 40px; +} + +.c3 { + padding-left: 4px; +} + +
+ + + + + + + + + + + + + + + + + + + +
+ + otpUi.TripDetails.FareTable.regular + + + + otpUi.TripDetails.FareTable.cash + +
+ $5.75 +
+ + otpUi.TripDetails.FareTable.electronic + +
+ $3.00 +
+ + otpUi.TripDetails.FareTable.special + +
+ $1.50 +
+ 347 + + $2.75 + + $2.75 + + $1.50 +
+ 1-Line + + $3.00 + + + + $0.25 + + + + $0.00 +
+ + + + + + + + + + + + + + + + +
+ + otpUi.TripDetails.FareTable.youth + + + + otpUi.TripDetails.FareTable.cash + +
+ $0.00 +
+ + otpUi.TripDetails.FareTable.electronic + +
+ $0.00 +
+ 347 + + $0.00 + + $0.00 +
+ 1-Line + + $0.00 + + $0.00 +
+ + + + + + + + + + + + + + + + +
+ + otpUi.TripDetails.FareTable.senior + + + + otpUi.TripDetails.FareTable.cash + +
+ $2.00 +
+ + otpUi.TripDetails.FareTable.electronic + +
+ $1.00 +
+ 347 + + $1.00 + + $1.00 +
+ 1-Line + + $1.00 + + + + $0.00 +
+
+`; + +exports[`Storyshots TripDetails Leg Fare Products Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails Leg Fare Products Itinerary 2`] = ` +.c4 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c7 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c13 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c8 { + float: right; +} + +.c9 { + display: inline-block; +} + +.c9 > span { + display: block; + padding-left: 1.75ch; +} + +.c2 { + margin-top: 6px; +} + +.c6 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c3 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c1 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c5 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +.c11 th { + font-weight: normal; + min-width: 5ch; + padding: 0.75em 1.5em; + text-align: center; +} + +.c11 th:nth-of-type(2n + 1) { + background: #cccccc22; +} + +.c11 th.main { + background: #333333; + color: #ffffffcc; +} + +.c10 { + border-collapse: collapse; + display: block; + margin-bottom: 16px; + padding: 0; +} + +.c10 td { + text-align: right; +} + +.c10 td:nth-of-type(2n + 1) { + background: #cccccc22; +} + +.c10 td.no-zebra { + background: none; +} + +.c10 th:first-of-type { + height: 40px; +} + +.c12 { + padding-left: 4px; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + May 26, 2023 + + at + + 3:23 PM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ +
+ + Transit Fare + : + + $5.75 + + +
+ + + + + + + + + + + + + + + + + +
+ + otpUi.TripDetails.FareTable.regular + + + + otpUi.TripDetails.FareTable.cash + +
+ $5.75 +
+ + otpUi.TripDetails.FareTable.electronic + +
+ $3.00 +
+ + otpUi.TripDetails.FareTable.special + +
+ $1.50 +
+ + $2.75 + + $2.75 + + $1.50 +
+ + $3.00 + + + + $0.25 + + + + $0.00 +
+ + + + + + + + + + + + + + +
+ + otpUi.TripDetails.FareTable.youth + + + + otpUi.TripDetails.FareTable.cash + +
+ $0.00 +
+ + otpUi.TripDetails.FareTable.electronic + +
+ $0.00 +
+ + $0.00 + + $0.00 +
+ + $0.00 + + $0.00 +
+ + + + + + + + + + + + + + +
+ + otpUi.TripDetails.FareTable.senior + + + + otpUi.TripDetails.FareTable.cash + +
+ $2.00 +
+ + otpUi.TripDetails.FareTable.electronic + +
+ $1.00 +
+ + $1.00 + + $1.00 +
+ + $1.00 + + + + $0.00 +
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 41 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 41 minutes + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 2,699g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails OTP 2 E Scooter Rental Transit Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails OTP 2 E Scooter Rental Transit Itinerary 2`] = ` +.c4 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c7 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c9 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c8 { + float: right; +} + +.c2 { + margin-top: 6px; +} + +.c6 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c3 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c1 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c5 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + June 15, 2022 + + at + + 9:15 AM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 5 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 5 minutes + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 7g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails OTP 2 Flex Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails OTP 2 Flex Itinerary 2`] = ` +.c4 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c7 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c9 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c8 { + float: right; +} + +.c2 { + margin-top: 6px; +} + +.c6 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c3 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c1 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c5 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + June 22, 2022 + + at + + 4:59 PM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 12 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 12 minutes + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 4,682g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+ +
+
+ + This trip includes flexible routes. This is the first pickup booking info message. This is the first dropoff booking info message. + +
+
+
+
+ +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails Styled Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails Styled Itinerary 2`] = ` +.c6 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c9 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c11 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c10 { + float: right; +} + +.c4 { + margin-top: 6px; +} + +.c8 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c5 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c3 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c7 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +.c1 .c2 { + background-color: pink; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + November 13, 2019 + + at + + 3:44 PM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 2 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 2 minutes + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 61g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails Tnc Transit Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails Tnc Transit Itinerary 2`] = ` +.c4 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c7 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c10 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c8 { + float: right; +} + +.c9 { + text-transform: capitalize; +} + +.c2 { + margin-top: 6px; +} + +.c6 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c3 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c1 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c5 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + May 23, 2023 + + at + + 10:58 AM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ + + + uber + + Fare: + + $34.00 + - + $37.00 + + + + +
+
+
+
+ + Custom details about fares (transitFares: + ) + + (cents), can be constructed dynamically using any markup. +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 2 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 2 minutes + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 319g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails Tnc Transit Itinerary With Custom Messages 1`] = ` +Leave at {departureDate, time, short} on {departureDate, date, long}", + "otpUi.TripDetails.title": "Custom Trip Details Title", + "otpUi.TripDetails.tncFare": "Pay {minTNCFare}-{maxTNCFare} to {companies}", + } + } + onError={[Function]} + textComponent={Symbol(react.fragment)} +> + + +`; + +exports[`Storyshots TripDetails Tnc Transit Itinerary With Custom Messages 2`] = ` +.c6 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c8 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c9 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c11 { + float: right; +} + +.c12 { + text-transform: capitalize; +} + +.c4 { + margin-top: 6px; +} + +.c10 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c5 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c3 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c7 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +.c1 .c2 { + background-color: pink; +} + +
+

+ Custom Trip Details Title +

+
+
+
+ +
+
+ + + Leave + + at + + 10:58 AM + + on + + May 23, 2023 + + + +
+
+
+
+ + Custom messages about + + May 23, 2023 + + can be constructed dynamically using any markup. +
+
+
+
+
+
+ +
+
+ + + Pay + + $34.00 + - + $37.00 + + to + + uber + + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 2 minutes + + +
+
+
+
+ + Custom message about + active minutes. +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 319g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails Walk Only Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails Walk Only Itinerary 2`] = ` +.c4 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c7 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c9 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c8 { + float: right; +} + +.c2 { + margin-top: 6px; +} + +.c6 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c3 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c1 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c5 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + December 13, 2019 + + at + + 11:29 AM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 1 minute + + +
+
+
+
+ + By taking this trip, you'll spend + + 1 minute + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 1g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripDetails Walk Transit Walk Itinerary 1`] = ` + + + +`; + +exports[`Storyshots TripDetails Walk Transit Walk Itinerary 2`] = ` +.c4 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c7 { + background: transparent; + border: 0; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-weight: 400; + line-height: 1.42857143; + margin: 0; + padding: 0; + -webkit-text-decoration: none; + text-decoration: none; + touch-action: manipulation; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + vertical-align: middle; + white-space: nowrap; +} + +.c9 { + color: #00f; + font-size: 16px; + margin-left: 6px; + margin-top: -2px; +} + +.c8 { + float: right; +} + +.c2 { + margin-top: 6px; +} + +.c6 { + background-color: #fff; + border: 1px solid #888; + font-size: 12px; + margin-top: 2px; + padding: 8px; +} + +.c3 { + float: left; + font-size: 17px; +} + +.c0 { + background-color: #eee; + border-radius: 6px; + margin-bottom: 15px; + margin-top: 16px; + padding: 10px 16px; +} + +.c1 { + font-size: 18px; + font-weight: 600; + margin: 0; +} + +.c5 { + margin-left: 28px; + padding-top: 2px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + white-space: pre; +} + +
+

+ Trip Details +

+
+
+
+ +
+
+ + Depart + + November 13, 2019 + + at + + 3:44 PM + + +
+
+
+
+ +
+
+
+
+
+
+ +
+
+ Time Spent Active: + + 2 minutes + + +
+
+
+
+ + By taking this trip, you'll spend + + 2 minutes + + walking and + + 0 minutes + + biking. + +
+
+
+
+
+
+ +
+
+ + CO₂ Emitted: + + 61g + + + +
+
+
+
+ + CO₂ intensity is calculated by multiplying the distance of each leg of a trip by the CO₂ intensity of each mode. CO₂ intensity of each mode is derived from + + this spreadsheet + + . +
+
+
+
+
+
+`; + +exports[`Storyshots TripOptions Company First Mixed Category 1`] = ` + + + + + +`; + +exports[`Storyshots TripOptions Company First Mixed Category 2`] = ` +.c3 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c13 { + font-weight: normal; + padding-left: 6px; +} + +.c12 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c12 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +.c0 { + background-color: #0d5eac; + color: white; + font-weight: 40; + max-width: 992px; + min-height: 400px; +} + +.c11 { + max-width: 700px; + padding: 12px; +} + +.c14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 20px; +} + +.c14 > button { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.c5 { + border-radius: 50%; + height: 2.5em; + margin-bottom: 10px; + width: 2.5em; + z-index: 10; + background-color: rgb(84,174,88); + color: white; +} + +.c9 { + border-radius: 50%; + height: 2.5em; + margin-bottom: 10px; + width: 2.5em; + z-index: 10; +} + +.c16 { + max-width: 100%; +} + +.c7 ~ .c4, +.c7 ~ .c8 { + height: 1.5em; + margin-bottom: -1em; + position: relative; + right: -30px; + top: -50px; + width: 1.5em; +} + +.c7 svg { + fill: white; + height: 3em; + position: relative; + width: 3em; +} + +.c2 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 77px; + opacity: 1; + padding: 20px 0px; + white-space: pre-wrap; +} + +.c6 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 50px; + opacity: 0.65; + padding: 20px 0px; + white-space: pre-wrap; +} + +.c10 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 77px; + opacity: 0.65; + padding: 20px 0px; + white-space: pre-wrap; +} + +.c15 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 77px; + opacity: 1; + padding: 20px 0px; + white-space: pre-wrap; + margin: 20px 0; + position: relative; +} + +.c15 .c8 { + background: #0d5eac; +} + +.c15 .c4, +.c15 .c8 { + position: absolute; + right: 5.5%; + top: 11%; +} + +.c1 { + background-color: #0a4c8d; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + overflow-x: scroll; + padding: 0 12px; + -ms-overflow-style: none; + -webkit-scrollbar-width: none; + -moz-scrollbar-width: none; + -ms-scrollbar-width: none; + scrollbar-width: none; +} + +.c1 > button { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; + margin-right: 24px; +} + +.c1:hover > button:hover { + opacity: 1; +} + +.c1:hover > button:hover svg { + opacity: 1; +} + +.c1::-webkit-scrollbar { + display: none; +} + +@media (max-width:768px) { + .c15 .c4, + .c15 .c8 { + max-height: 20px; + max-width: 20px; + } +} + +
+
+ + + + + + +
+
+
+
+
+ +
+
+ +
+
+
+
+ + + +
+
+
+`; + +exports[`Storyshots TripOptions Default 1`] = ` + + + - - + } + /> + `; -exports[`Storyshots VehicleRentalOverlay Rental Cars 2`] = ` +exports[`Storyshots TripOptions Default 2`] = ` +.c3 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c13 { + font-weight: normal; + padding-left: 6px; +} + +.c12 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c12 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + .c0 { - height: 90vh; + background-color: #0d5eac; + color: white; + font-weight: 40; + max-width: 992px; + min-height: 400px; +} + +.c11 { + max-width: 700px; + padding: 12px; +} + +.c14 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 20px; +} + +.c14 > button { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.c5 { + border-radius: 50%; + height: 2.5em; + margin-bottom: 10px; + width: 2.5em; + z-index: 10; + background-color: rgb(84,174,88); + color: white; +} + +.c9 { + border-radius: 50%; + height: 2.5em; + margin-bottom: 10px; + width: 2.5em; + z-index: 10; +} + +.c16 { + max-width: 100%; +} + +.c7 ~ .c4, +.c7 ~ .c8 { + height: 1.5em; + margin-bottom: -1em; + position: relative; + right: -30px; + top: -50px; + width: 1.5em; +} + +.c7 svg { + fill: white; + height: 3em; + position: relative; + width: 3em; +} + +.c2 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 77px; + opacity: 1; + padding: 20px 0px; + white-space: pre-wrap; +} + +.c6 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 50px; + opacity: 0.65; + padding: 20px 0px; + white-space: pre-wrap; +} + +.c10 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 77px; + opacity: 0.65; + padding: 20px 0px; + white-space: pre-wrap; +} + +.c15 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: rgba(0,0,0,0); + border: none; + color: white; + cursor: pointer; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + min-width: 77px; + opacity: 1; + padding: 20px 0px; + white-space: pre-wrap; + margin: 20px 0; + position: relative; +} + +.c15 .c8 { + background: #0d5eac; +} + +.c15 .c4, +.c15 .c8 { + position: absolute; + right: 5.5%; + top: 11%; +} + +.c1 { + background-color: #0a4c8d; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + overflow-x: scroll; + padding: 0 12px; + -ms-overflow-style: none; + -webkit-scrollbar-width: none; + -moz-scrollbar-width: none; + -ms-scrollbar-width: none; + scrollbar-width: none; +} + +.c1 > button { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; + margin-right: 24px; +} + +.c1:hover > button:hover { + opacity: 1; +} + +.c1:hover > button:hover svg { + opacity: 1; +} + +.c1::-webkit-scrollbar { + display: none; +} + +@media (max-width:768px) { + .c15 .c4, + .c15 .c8 { + max-height: 20px; + max-width: 20px; + } }
-
-`; - -exports[`Storyshots VehicleRentalOverlay Rental E Scooters 1`] = ` - - - + + + + + + +
+
+
- +
+ +
+
+ +
+
+
+
+ + + +
+
`; -exports[`Storyshots VehicleRentalOverlay Rental E Scooters With Custom Naming 1`] = ` +exports[`Storyshots TripViewerOverlay Default 1`] = ` - + + + +`; + +exports[`Storyshots TripViewerOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TripViewerOverlay With Path Styling 1`] = ` + + + + `; -exports[`Storyshots VehicleRentalOverlay Rental E Scooters With Custom Naming 2`] = ` +exports[`Storyshots TripViewerOverlay With Path Styling 2`] = ` .c0 { height: 90vh; } From a6306e09a7a07ca26d00e219cfc3beb82e364576 Mon Sep 17 00:00:00 2001 From: binh-dam-ibigroup <56846598+binh-dam-ibigroup@users.noreply.github.com> Date: Wed, 16 Aug 2023 17:07:35 -0400 Subject: [PATCH 31/34] test(storybook): Update snapshots --- __snapshots__/storybook.test.ts.snap | 61482 +++++++++++++++++++++++-- 1 file changed, 56453 insertions(+), 5029 deletions(-) diff --git a/__snapshots__/storybook.test.ts.snap b/__snapshots__/storybook.test.ts.snap index 06d5d4440..5fc520284 100644 --- a/__snapshots__/storybook.test.ts.snap +++ b/__snapshots__/storybook.test.ts.snap @@ -115157,7 +115157,7 @@ exports[`Storyshots ItineraryBody/otp-ui OTP 2 Flex Itinerary 2`] = ` - ID area_626 + ID area_626_flexed_to @@ -115273,7 +115273,7 @@ exports[`Storyshots ItineraryBody/otp-ui OTP 2 Flex Itinerary 2`] = ` - ID area_626 + ID area_626_flexed_to
@@ -115290,7 +115290,7 @@ exports[`Storyshots ItineraryBody/otp-ui OTP 2 Flex Itinerary 2`] = ` - ID area_626 + ID area_626_flexed_to
`; -exports[`Storyshots RouteViewerOverlay Default 1`] = ` +exports[`Storyshots PrintableItinerary Bike Only Itinerary 1`] = ` - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Default 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay Flex Route 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Flex Route 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots RouteViewerOverlay Flex Route 2 1`] = ` - - - - - - - - - - - - - - -`; - -exports[`Storyshots RouteViewerOverlay Flex Route 2 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
+ `; -exports[`Storyshots RouteViewerOverlay Flex Route 3 1`] = ` - - - +
- - + + Depart + + from + + 503 SW Alder St, Portland, OR, USA 97204 + +
+
+
+
+
+
+ + + + +
+
+
+ + Bicycle 0.7 miles to + + 1737 SW Morrison St, Portland, OR, USA 97205 + + +
+
+ + Head + EAST + on + + SW Alder St + + + 87 feet + + +
+
+ + RIGHT + on + + SW 5th Ave + + + 257 feet + + +
+
+ + RIGHT + on + + SW Morrison St + + + 0.6 miles + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Bike Rental Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Bike Rental Itinerary 2`] = ` +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 2624 SE 30th Ave, Portland, OR, USA 97202 + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 498 feet to + + SE 30th at Division + + +
+
+ + Head + WEST + on + + SE Clinton St + + + 79 feet + + +
+
+ + RIGHT + on + + SE 30th Ave + + + 419 feet + + +
+
+
+
+
+
+
+ + + + + + + + + + +
+
+
+ + Bicycle 0.6 miles to + + SE 29th at Hawthorne + + +
+
+ + CONTINUE + on + + SE 30th Ave + + + 0.3 miles + + +
+
+ + LEFT + on + + SE Harrison St + + + 361 feet + + +
+
+ + RIGHT + on + + SE 29th Ave + + + 0.2 miles + + +
+
+ + LEFT + on + + SE Hawthorne Blvd + + + 50 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 0.1 miles to + + 1415 SE 28th Ave, Portland, OR, USA 97214 + + +
+
+ + CONTINUE + on + + SE Hawthorne Blvd + + + 210 feet + + +
+
+ + RIGHT + on + + SE 28th Ave + + + 295 feet + + +
+
+ + LEFT + on + + SE Madison St + + + 114 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Bike Rental Transit Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Bike Rental Transit Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 2943 SE Washington St, Portland, OR, USA 97214 + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 400 feet to + + SE 29th at Stark + + +
+
+ + Head + NORTH + on + + SE 30th Ave + + + 103 feet + + +
+
+ + RIGHT + on + + SE Stark St + + + 277 feet + + +
+
+ + RIGHT + on + + SE 29th Ave + + + 19 feet + + +
+
+
+
+
+
+
+ + + + + + + + + + +
+
+
+ + Bicycle 0.8 miles to + + NE Glisan at 24th + + +
+
+ + CONTINUE + on + + SE 29th Ave + + + 492 feet + + +
+
+ + LEFT + on + + SE Pine St + + + 358 feet + + +
+
+ + RIGHT + on + + SE 28th Ave + + + 518 feet + + +
+
+ + LEFT + on + + SE Ankeny St + + + 0.2 miles + + +
+
+ + RIGHT + on + + SE 24th Ave + + + 259 feet + + +
+
+ + CONTINUE + on + + NE 24th Ave + + + 0.2 miles + + +
+
+ + LEFT + on + + NE Glisan St + + + 57 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 497 feet to + + NE Sandy & 24th + + +
+
+ + HARD_LEFT + on + + NE Glisan St + + + 57 feet + + +
+
+ + LEFT + on + + NE 24th Ave + + + 382 feet + + +
+
+ + RIGHT + on + + NE Sandy Blvd + + + 58 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + 12 + + + + Barbur/Sandy Blvd + + to + + Parkrose TC + +
+
+
+ Board at + + NE Sandy & 24th + + (5066) at + + 4:02 PM + +
+
+ Get off at + + NE Sandy & 57th + + (5104) at + + 4:14 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 279 feet to + + 0086 BIKETOWN + + +
+
+ + Head + NORTHEAST + on + + NE Sandy Blvd + + + 75 feet + + +
+
+ + HARD_LEFT + on + + NE Alameda St + + + 203 feet + + +
+
+
+
+
+
+
+ + + + + + + + + + +
+
+
+ + Bicycle 1 mile to + + NE 60th at Cully + + +
+
+ + HARD_LEFT + on + + NE Alameda St + + + 203 feet + + +
+
+ + HARD_LEFT + on + + NE 57th Ave + + + 0.6 miles + + +
+
+ + CONTINUE + on + + NE Cully Blvd + + + 0.3 miles + + +
+
+ + LEFT + on + + NE 60th Ave + + + 171 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 494 feet to + + 5916 NE Going St, Portland, OR, USA 97218 + + +
+
+ + CONTINUE + on + + NE 60th Ave + + + 270 feet + + +
+
+ + LEFT + on + + NE Going St + + + 225 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Bike Transit Bike Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Bike Transit Bike Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + KGW Studio on the Sq, Portland, OR, USA + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 91 feet to + + corner of path and Pioneer Courthouse Sq (pedestrian street) + + +
+
+ + Head + SOUTHEAST + on + + Unnamed Path + + + 91 feet + + +
+
+
+
+
+
+
+ + + + +
+
+
+ + Bicycle 0.1 miles to + + corner of path and Pioneer Sq N (path) + + +
+
+ + LEFT + on + + Unnamed Path + + + 20 feet + + +
+
+ + LEFT + on + + SW 6th Ave + + + 245 feet + + +
+
+ + LEFT + on + + SW Morrison St + + + 241 feet + + +
+
+ + LEFT + on + + Unnamed Path + + + 27 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 22 feet to + + Pioneer Square North MAX Station + + +
+
+ + LEFT + on + + Pioneer Sq N (path) + + + 22 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + + + MAX Blue Line + + to + + Hillsboro + +
+
+
+ Board at + + Pioneer Square North MAX Station + + (8383) at + + 3:46 PM + +
+
+ Get off at + + Providence Park MAX Station + + (9757) at + + 3:49 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 19 feet to + + corner of path and Providence Park (path) + + +
+
+ + Head + WEST + on + + Providence Park (path) + + + 19 feet + + +
+
+
+
+
+
+
+ + + + +
+
+
+ + Bicycle 230 feet to + + 1737 SW Morrison St, Portland, OR, USA 97205 + + +
+
+ + RIGHT + on + + Unnamed Path + + + 104 feet + + +
+
+ + RIGHT + on + + Unnamed Path + + + 27 feet + + +
+
+ + RIGHT + on + + SW Morrison St + + + 99 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Classic Icons And Park And Ride Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Classic Icons And Park And Ride Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 330 SW Murray Blvd, Washington County, OR, USA 97005 + +
+
+
+
+
+
+ + + +
+
+
+ + Drive 2.4 miles to + + P+R Sunset TC + + +
+
+ + Head + SOUTHWEST + on + + parking aisle + + + 158 feet + + +
+
+ + RIGHT + on + + SW Murray Blvd + + + 0.2 miles + + +
+
+ + CONTINUE + on + + NW Murray Blvd + + + 150 feet + + +
+
+ + SLIGHTLY_RIGHT + on + + NW Murray Blvd + + + 0.4 miles + + +
+
+ + CONTINUE + on + + NW Sunset Hwy + + + 0.6 miles + + +
+
+ + CONTINUE + on + + NW Sunset Hwy + + + 0.3 miles + + +
+
+ + LEFT + on + + SW Cedar Hills Blvd + + + 0.2 miles + + +
+
+ + RIGHT + on + + SW Barnes Rd + + + 0.5 miles + + +
+
+ + RIGHT + on + + service road + + + 0.2 miles + + +
+
+ + RIGHT + on + + Sunset TC + + + 76 feet + + +
+
+
+
+
+
+
+ + + + +
+
+
+ + Walk 426 feet to + + Sunset TC MAX Station + + +
+
+ + SLIGHTLY_RIGHT + on + + Unnamed Path + + + 16 feet + + +
+
+ + LEFT + on + + steps + + + 232 feet + + +
+
+ + LEFT + on + + Unnamed Path + + + 19 feet + + +
+
+ + RIGHT + on + + Sunset TC (path) + + + 159 feet + + +
+
+
+
+
+
+
+ + + + + +
+
+
+
+ + + + MAX Blue Line + + to + + Gresham + +
+
+
+ Board at + + Sunset TC MAX Station + + (2600) at + + 4:05 PM + +
+
+ Get off at + + Oak/ SW 1st Ave MAX Station + + (8337) at + + 4:27 PM + +
+
+
+
+
+
+
+ + + + +
+
+
+ + Walk 0.1 miles to + + 205 SW Pine St, Portland, OR, USA 97204 + + +
+
+ + Head + NORTHEAST + on + + Oak/SW 1st Ave (path) + + + 13 feet + + +
+
+ + CONTINUE + on + + Unnamed Path + + + 27 feet + + +
+
+ + LEFT + on + + SW Oak St + + + 37 feet + + +
+
+ + RIGHT + on + + SW 1st Ave + + + 260 feet + + +
+
+ + LEFT + on + + SW Pine St + + + 337 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary E Scooter Rental Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary E Scooter Rental Itinerary 2`] = ` +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 600 SW 5th Ave, Portland, OR, USA 97204 + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 206 feet to + + EMAQ + + +
+
+ + Head + EAST + on + + SW Alder St + + + 118 feet + + +
+
+ + LEFT + on + + SW 4th Ave + + + 88 feet + + +
+
+
+
+
+
+
+ + + + + + + + + +
+
+
+ + Ride 0.3 miles to + + 205 SW Pine St, Portland, OR, USA 97204 + + +
+
+ + CONTINUE + on + + SW 4th Ave + + + 0.2 miles + + +
+
+ + RIGHT + on + + SW Pine St + + + 456 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary E Scooter Rental Transit Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary E Scooter Rental Transit Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 2943 SE Washington St, Portland, OR, USA 97214 + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 0.4 miles to + + Shared E-scooter + + +
+
+ + Head + SOUTH + on + + SE 30th Ave + + + 0.2 miles + + +
+
+ + RIGHT + on + + SE Belmont St + + + 330 feet + + +
+
+ + LEFT + on + + SE 29th Ave + + + 511 feet + + +
+
+ + RIGHT + on + + SE Taylor St + + + 235 feet + + +
+
+
+
+
+
+
+ + + + + + + + + + +
+
+
+ + Ride 1.4 miles to + + NE Broadway + + +
+
+ + CONTINUE + on + + SE Taylor St + + + 26 feet + + +
+
+ + RIGHT + on + + SE 28th Ave + + + 0.6 miles + + +
+
+ + CONTINUE + on + + NE 28th Ave + + + 0.7 miles + + +
+
+ + SLIGHTLY_RIGHT + on + + NE Halsey St + + + 17 feet + + +
+
+ + RIGHT + on + + NE Halsey St + + + 59 feet + + +
+
+ + SLIGHTLY_LEFT + on + + NE 28th Ave + + + 28 feet + + +
+
+ + SLIGHTLY_LEFT + on + + NE 28th Ave + + + 489 feet + + +
+
+ + RIGHT + on + + NE Broadway + + + 86 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk to + + NE Broadway & 28th + + +
+
+ + RIGHT + on + + street transit link + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + 70 + + + + 12th/NE 33rd Ave + + to + + NE Sunderland + +
+
+
+ Board at + + NE Broadway & 28th + + (638) at + + 4:08 PM + +
+
+ Get off at + + NE 33rd & Shaver + + (7393) at + + 4:17 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 0.4 miles to + + Shared E-scooter + + +
+
+ + Head + NORTH + on + + NE 33rd Ave + + + 33 feet + + +
+
+ + RIGHT + on + + NE Shaver St + + + 0.3 miles + + +
+
+ + LEFT + on + + NE 38th Ave + + + 332 feet + + +
+
+
+
+
+
+
+ + + + + + + + + + +
+
+
+ + Ride 1 mile to + + 5112 NE 47th Pl, Portland, OR, USA 97218 + + +
+
+ + CONTINUE + on + + NE 38th Ave + + + 355 feet + + +
+
+ + RIGHT + on + + NE Skidmore St + + + 0.2 miles + + +
+
+ + LEFT + on + + NE 42nd Ave + + + 0.4 miles + + +
+
+ + RIGHT + on + + NE Alberta St + + + 0.3 miles + + +
+
+ + LEFT + on + + NE 47th Pl + + + 313 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary OTP 2 Scooter Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary OTP 2 Scooter Itinerary 2`] = ` +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 300 Courtland St NE, Atlanta, GA 30303-12ND, United States + +
+
+
+
+
+
+ + + + +
+
+
+ + Walk 0.2 miles to + + Razor Vehicle + + +
+
+ + Head + SOUTH + on + + Courtland Street Northeast + + + 172 feet + + +
+
+ + RIGHT + on + + Unnamed Path + + + 0.1 miles + + +
+
+ + LEFT + on + + Peachtree Center Avenue Northeast + + + 140 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Ride 1 mile to + + 126 Mitchell St SW, Atlanta, GA 30303-3524, United States + + +
+
+ + HARD_RIGHT + on + + Peachtree Center Avenue Northeast + + + 12 feet + + +
+
+ + LEFT + on + + service road + + + 10 feet + + +
+
+ + LEFT + on + + Peachtree Center Cycle Track + + + 0.5 miles + + +
+
+ + RIGHT + on + + Edgewood Avenue Northeast + + + 0.1 miles + + +
+
+ + LEFT + on + + Pryor Street Southwest + + + 269 feet + + +
+
+ + CONTINUE + on + + Pryor Street + + + 518 feet + + +
+
+ + CONTINUE + on + + Pryor Street Southwest + + + 0.2 miles + + +
+
+ + RIGHT + on + + Unnamed Path + + + 19 feet + + +
+
+ + RIGHT + on + + sidewalk + + + 22 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Park And Ride Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Park And Ride Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 330 SW Murray Blvd, Washington County, OR, USA 97005 + +
+
+
+
+
+
+ + + + +
+
+
+ + Drive 2.4 miles to + + P+R Sunset TC + + +
+
+ + Head + SOUTHWEST + on + + parking aisle + + + 158 feet + + +
+
+ + RIGHT + on + + SW Murray Blvd + + + 0.2 miles + + +
+
+ + CONTINUE + on + + NW Murray Blvd + + + 150 feet + + +
+
+ + SLIGHTLY_RIGHT + on + + NW Murray Blvd + + + 0.4 miles + + +
+
+ + CONTINUE + on + + NW Sunset Hwy + + + 0.6 miles + + +
+
+ + CONTINUE + on + + NW Sunset Hwy + + + 0.3 miles + + +
+
+ + LEFT + on + + SW Cedar Hills Blvd + + + 0.2 miles + + +
+
+ + RIGHT + on + + SW Barnes Rd + + + 0.5 miles + + +
+
+ + RIGHT + on + + service road + + + 0.2 miles + + +
+
+ + RIGHT + on + + Sunset TC + + + 76 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 426 feet to + + Sunset TC MAX Station + + +
+
+ + SLIGHTLY_RIGHT + on + + Unnamed Path + + + 16 feet + + +
+
+ + LEFT + on + + steps + + + 232 feet + + +
+
+ + LEFT + on + + Unnamed Path + + + 19 feet + + +
+
+ + RIGHT + on + + Sunset TC (path) + + + 159 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + + + MAX Blue Line + + to + + Gresham + +
+
+
+ Board at + + Sunset TC MAX Station + + (2600) at + + 4:05 PM + +
+
+ Get off at + + Oak/ SW 1st Ave MAX Station + + (8337) at + + 4:27 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 0.1 miles to + + 205 SW Pine St, Portland, OR, USA 97204 + + +
+
+ + Head + NORTHEAST + on + + Oak/SW 1st Ave (path) + + + 13 feet + + +
+
+ + CONTINUE + on + + Unnamed Path + + + 27 feet + + +
+
+ + LEFT + on + + SW Oak St + + + 37 feet + + +
+
+ + RIGHT + on + + SW 1st Ave + + + 260 feet + + +
+
+ + LEFT + on + + SW Pine St + + + 337 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Styled Walk Transit Walk Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Styled Walk Transit Walk Itinerary 2`] = ` +.c18 { + font-weight: 200; +} + +.c9 { + font-weight: inherit; +} + +.c14 { + font-weight: 500; +} + +.c15 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c1 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c2 { + border-top: none; + padding-top: 0; +} + +.c4 { + margin-left: 10px; +} + +.c11 { + font-size: 14px; + margin-top: 3px; +} + +.c10 { + margin-top: 5px; +} + +.c5 { + font-size: 18px; +} + +.c8 { + font-size: 18px; +} + +.c6 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c12 .c13 { + font-weight: bold; +} + +.c16 { + font-weight: bold; +} + +.c16 .c17 { + font-weight: normal; +} + +.c7 { + float: left; + width: 32px; + height: 32px; +} + +.c0 .c3 { + background-color: pink; +} + +
+
+
+
+ + Depart + + from + + KGW Studio on the Sq, Portland, OR, USA + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 269 feet to + + Pioneer Square North MAX Station + + +
+
+ + Head + NORTHWEST + on + + Unnamed Path + + + 167 feet + + +
+
+ + LEFT + on + + Pioneer Sq N (path) + + + 101 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + + + MAX Blue Line + + to + + Hillsboro + +
+
+
+ Board at + + Pioneer Square North MAX Station + + (8383) at + + 3:46 PM + +
+
+ Get off at + + Providence Park MAX Station + + (9757) at + + 3:49 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 249 feet to + + 1737 SW Morrison St, Portland, OR, USA 97205 + + +
+
+ + Head + WEST + on + + Providence Park (path) + + + 19 feet + + +
+
+ + RIGHT + on + + Unnamed Path + + + 104 feet + + +
+
+ + RIGHT + on + + Unnamed Path + + + 27 feet + + +
+
+ + RIGHT + on + + SW Morrison St + + + 99 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Tnc Transit Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Tnc Transit Itinerary 2`] = ` +.c9 { + font-weight: inherit; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c7 { + font-size: 14px; + margin-top: 3px; +} + +.c6 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c8 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 { + font-weight: bold; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 128 NW 12th Ave, Portland + +
+
+
+
+
+
+ + + + + + +
+
+
+
+ + Take + + to + + West Burnside Street + +
+
+
+ Estimated wait time for pickup: + + 4 min + +
+
+ Estimated travel time: + + 2 min + + (does not account for traffic) +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk to + + W Burnside & SW 6th + + +
+
+
+
+
+
+ + + +
+
+
+
+ + + +
+
+
+ Board at + + W Burnside & SW 6th + + () at + + 11:02 AM + +
+
+ Get off at + + E Burnside & SE 12th + + () at + + 11:08 AM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk to + + East Burnside Street + + +
+
+
+
+
+
+ + + + + + +
+
+
+
+ + Take + + to + + 407 NE 12th Ave, Portland + +
+
+
+ Estimated wait time for pickup: + + 2 min + +
+
+ Estimated travel time: + + 1 min + + (does not account for traffic) +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Walk Interlined Transit Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Walk Interlined Transit Itinerary 2`] = ` +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 47.97767, -122.20034 + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 0.3 miles to + + Everett Station Bay C1 + + +
+
+ + Head + SOUTH + on + + service road + + + 0.1 miles + + +
+
+ + RIGHT + on + + Smith Avenue + + + 129 feet + + +
+
+ + CONTINUE + on + + Paine Avenue + + + 61 feet + + +
+
+ + LEFT + on + + 32nd Street + + + 67 feet + + +
+
+ + RIGHT + on + + 32nd Street + + + 313 feet + + +
+
+ + LEFT + on + + Unnamed Path + + + 380 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + 512 + + + + Northgate Station + +
+
+
+ Board at + + Everett Station Bay C1 + + (2345) at + + 1:04 PM + +
+
+ Get off at + + Northgate Station + + (2191) at + + 1:51 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk to + + Northgate Station - Bay 4 + + +
+
+
+
+
+
+ + + +
+
+
+
+ + 40 + + + + Downtown Seattle Ballard + +
+
+
+ Board at + + Northgate Station - Bay 4 + + (35318) at + + 1:55 PM + +
+
+ Get off at + + N 105th St & Aurora Ave N + + (40032) at + + 2:06 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 259 feet to + + Aurora Ave N & N 105th St + + +
+
+ + Head + EAST + on + + North 105th Street + + + 64 feet + + +
+
+ + RIGHT + on + + service road + + + 14 feet + + +
+
+ + LEFT + on + + Unnamed Path + + + 180 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + E Line + + + + Downtown Seattle + +
+
+
+ Board at + + Aurora Ave N & N 105th St + + (7080) at + + 2:07 PM + +
+
+ Get off at + + 3rd Ave & Cherry St + + (490) at + + 2:39 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 443 feet to + + 208 James St, Seattle, WA 98104-2212, United States + + +
+
+ + Head + SOUTHEAST + on + + sidewalk + + + 326 feet + + +
+
+ + UTURN_RIGHT + on + + sidewalk + + + 117 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Walk Only Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Walk Only Itinerary 2`] = ` +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + KGW Studio on the Sq, Portland, OR, USA + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 166 feet to + + 701 SW 6th Ave, Portland, OR, USA 97204 + + +
+
+ + Head + NORTHWEST + on + + Unnamed Path + + +
+
+ + LEFT + on + + Unnamed Path + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Walk Transit Transfer Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Walk Transit Transfer Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 3940 SE Brooklyn St, Portland, OR, USA 97202 + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 238 feet to + + SE Cesar Chavez Blvd & Brooklyn (long address that spans multiple lines) + + +
+
+ + Head + WEST + on + + SE Brooklyn St + + + 205 feet + + +
+
+ + RIGHT + on + + SE Cesar E. Chavez Blvd + + + 33 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + 755X + + + + Cesar Chavez/Lombard (very long route name) + + to + + St. Johns via NAYA + +
+
+
+ Board at + + SE Cesar Chavez Blvd & Brooklyn + + (7439) at + + 3:47 PM + +
+
+ Get off at + + SE Cesar Chavez Blvd & Hawthorne + + (7459) at + + 3:52 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 440 feet to + + SE Hawthorne & Cesar Chavez Blvd + + +
+
+ + Head + SOUTH + on + + service road + + + 146 feet + + +
+
+ + RIGHT + on + + SE Cesar E. Chavez Blvd + + + 198 feet + + +
+
+ + LEFT + on + + SE Hawthorne Blvd + + + 96 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + 1 + + + + Hawthorne + + to + + Portland + +
+
+
+ Board at + + SE Hawthorne & Cesar Chavez Blvd + + (2626) at + + 4:00 PM + +
+
+ Get off at + + SE Hawthorne & 27th + + (2613) at + + 4:04 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 479 feet to + + 1415 SE 28th Ave, Portland, OR, USA 97214 + + +
+
+ + Head + WEST + on + + SE Hawthorne Blvd + + + 40 feet + + +
+
+ + RIGHT + on + + SE 27th Ave + + + 294 feet + + +
+
+ + RIGHT + on + + SE Madison St + + + 146 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Walk Transit Transfer With A 11 Y Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Walk Transit Transfer With A 11 Y Itinerary 2`] = ` +.c7 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c20 { + font-weight: 200; +} + +.c11 { + font-weight: inherit; +} + +.c16 { + font-weight: 500; +} + +.c17 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c6 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + border: 1px solid #333; + background-color: transparent; + border-radius: 20px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: justify; + -webkit-justify-content: space-between; + -ms-flex-pack: justify; + justify-content: space-between; + margin-top: 0.25em; + max-width: 75px; + height: 30px; + padding: 0.25em 0.6em 0.25em 0.4em; + word-wrap: anywhere; +} + +.c8 { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.c8 span { + display: block; +} + +.c9 { + padding-top: 3px; + font-weight: 600; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c13 { + font-size: 14px; + margin-top: 3px; +} + +.c12 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c10 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c14 .c15 { + font-weight: bold; +} + +.c18 { + font-weight: bold; +} + +.c18 .c19 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + 3940 SE Brooklyn St, Portland, OR, USA 97202 + +
+
+
+
+
+
+ + + +
+
+ + + + ✅ + + +
+
+
+ + Walk 238 feet to + + SE Cesar Chavez Blvd & Brooklyn (long address that spans multiple lines) + + +
+
+ + Head + WEST + on + + SE Brooklyn St + + + 205 feet + + +
+
+ + RIGHT + on + + SE Cesar E. Chavez Blvd + + + 33 feet + + +
+
+
+
+
+
+
+ + + +
+
+ + + + ? + + +
+
+
+
+ + 755X + + + + Cesar Chavez/Lombard (very long route name) + + to + + St. Johns via NAYA + +
+
+
+ Board at + + SE Cesar Chavez Blvd & Brooklyn + + (7439) at + + 3:47 PM + +
+
+ Get off at + + SE Cesar Chavez Blvd & Hawthorne + + (7459) at + + 3:52 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 440 feet to + + SE Hawthorne & Cesar Chavez Blvd + + +
+
+ + Head + SOUTH + on + + service road + + + 146 feet + + +
+
+ + RIGHT + on + + SE Cesar E. Chavez Blvd + + + 198 feet + + +
+
+ + LEFT + on + + SE Hawthorne Blvd + + + 96 feet + + +
+
+
+
+
+
+
+ + + +
+
+ + + + ❌ + + +
+
+
+
+ + 1 + + + + Hawthorne + + to + + Portland + +
+
+
+ Board at + + SE Hawthorne & Cesar Chavez Blvd + + (2626) at + + 4:00 PM + +
+
+ Get off at + + SE Hawthorne & 27th + + (2613) at + + 4:04 PM + +
+
+
+
+
+
+
+ + + +
+
+ + + + ❌ + + +
+
+
+ + Walk 479 feet to + + 1415 SE 28th Ave, Portland, OR, USA 97214 + + +
+
+ + Head + WEST + on + + SE Hawthorne Blvd + + + 40 feet + + +
+
+ + RIGHT + on + + SE 27th Ave + + + 294 feet + + +
+
+ + RIGHT + on + + SE Madison St + + + 146 feet + + +
+
+
+
+
+`; + +exports[`Storyshots PrintableItinerary Walk Transit Walk Itinerary 1`] = ` + + + +`; + +exports[`Storyshots PrintableItinerary Walk Transit Walk Itinerary 2`] = ` +.c16 { + font-weight: 200; +} + +.c7 { + font-weight: inherit; +} + +.c12 { + font-weight: 500; +} + +.c13 { + font-weight: 200; + opacity: 0.8975; + padding-left: 1ch; +} + +.c0 { + margin-bottom: 10px; + border-top: 1px solid grey; + padding-top: 18px; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; +} + +.c1 { + border-top: none; + padding-top: 0; +} + +.c2 { + margin-left: 10px; +} + +.c9 { + font-size: 14px; + margin-top: 3px; +} + +.c8 { + margin-top: 5px; +} + +.c3 { + font-size: 18px; +} + +.c6 { + font-size: 18px; +} + +.c4 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + height: 100%; + min-width: 70px; +} + +.c10 .c11 { + font-weight: bold; +} + +.c14 { + font-weight: bold; +} + +.c14 .c15 { + font-weight: normal; +} + +.c5 { + float: left; + width: 32px; + height: 32px; +} + +
+
+
+
+ + Depart + + from + + KGW Studio on the Sq, Portland, OR, USA + +
+
+
+
+
+
+ + + +
+
+
+ + Walk 269 feet to + + Pioneer Square North MAX Station + + +
+
+ + Head + NORTHWEST + on + + Unnamed Path + + + 167 feet + + +
+
+ + LEFT + on + + Pioneer Sq N (path) + + + 101 feet + + +
+
+
+
+
+
+
+ + + +
+
+
+
+ + + + MAX Blue Line + + to + + Hillsboro + +
+
+
+ Board at + + Pioneer Square North MAX Station + + (8383) at + + 3:46 PM + +
+
+ Get off at + + Providence Park MAX Station + + (9757) at + + 3:49 PM + +
+
+
+
+
+
+
+ + + +
+
+
+ + Walk 249 feet to + + 1737 SW Morrison St, Portland, OR, USA 97205 + + +
+
+ + Head + WEST + on + + Providence Park (path) + + + 19 feet + + +
+
+ + RIGHT + on + + Unnamed Path + + + 104 feet + + +
+
+ + RIGHT + on + + Unnamed Path + + + 27 feet + + +
+
+ + RIGHT + on + + SW Morrison St + + + 99 feet + + +
+
+
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Default 1`] = ` + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Flex Route 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Flex Route 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Flex Route 2 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots RouteViewerOverlay Flex Route 2 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots RouteViewerOverlay Flex Route 3 1`] = ` + + + + + - +Uber + + + + + + + + + + + + + +
+
+ +
+
+ +
+
+ +
+
+
+
+ Travel Preferences +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+ +
+
+
+
+ +
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 1`] = ` + +
+ + +
+
+`; + +exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 2`] = ` +.c5 { + font-weight: normal; + padding-left: 6px; +} + +.c0 { + padding: 0px 5px; + box-sizing: border-box; +} + +.c0 > * { + width: 100%; +} + +.c3 > * { + width: 33.333333%; + padding: 0px 5px; +} + +.c1 { + display: inline-block; + text-align: center; + box-sizing: border-box; +} + +.c1 > * { + box-sizing: border-box; + overflow: hidden; + white-space: nowrap; +} + +.c2 { + cursor: pointer; + width: 100%; + height: 100%; +} + +.c2 svg, +.c2 img { + vertical-align: middle; + max-width: 1.25em; + margin: 0 0.25em; + height: 1.25em; +} + +.c2.active { + font-weight: 600; + box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); +} + +.c2.disabled { + cursor: default; +} + +.c2.disabled svg { + fill: #ccc; +} + +.c4 > div { + width: 50%; + display: inline-block; + box-sizing: border-box; + position: relative; +} + +.c4 select { + width: 100%; + box-sizing: border-box; + cursor: pointer; +} + +
+
+
+
-
-
- -
-
-
+
+
+
+ +
+
+ +
+
+
+
+ +
+`; + +exports[`Storyshots StopViewerOverlay Default 1`] = ` + + + + + + + +`; + +exports[`Storyshots StopViewerOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopViewerOverlay With Custom Marker 1`] = ` + + + + + + + +`; + +exports[`Storyshots StopViewerOverlay With Custom Marker 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopsOverlay Default 1`] = ` + + + + + + + +`; + +exports[`Storyshots StopsOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopsOverlay Flex Stops 1`] = ` + + + + + + + + + + + +`; + +exports[`Storyshots StopsOverlay Flex Stops 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots StopsOverlay No Min Zoom 1`] = ` + + + - -
-
- -
-
- -
-
- -
-
+ - -
-
-
-
+ + + + + +`; + +exports[`Storyshots StopsOverlay No Min Zoom 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Default 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Default 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 1`] = ` + + + -
-
- -
-
- -
-
-
-
- + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitVehicleOverlay Inner Caret 1`] = ` + + + + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Inner Caret 2`] = ` +.c0 { + height: 90vh; +} + +
+
`; -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 1`] = ` +exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 1`] = ` -
- - -
-
-`; - -exports[`Storyshots SeṯtingsSelectorPanel Settings Selector Panel With Undefined Params 2`] = ` -.c5 { - font-weight: normal; - padding-left: 6px; -} - -.c0 { - padding: 0px 5px; - box-sizing: border-box; -} - -.c0 > * { - width: 100%; -} - -.c3 > * { - width: 33.333333%; - padding: 0px 5px; -} - -.c1 { - display: inline-block; - text-align: center; - box-sizing: border-box; -} - -.c1 > * { - box-sizing: border-box; - overflow: hidden; - white-space: nowrap; -} - -.c2 { - cursor: pointer; - width: 100%; - height: 100%; -} - -.c2 svg, -.c2 img { - vertical-align: middle; - max-width: 1.25em; - margin: 0 0.25em; - height: 1.25em; -} - -.c2.active { - font-weight: 600; - box-shadow: 0 0 2px 2px rgba(0,64,255,0.5); -} - -.c2.disabled { - cursor: default; -} - -.c2.disabled svg { - fill: #ccc; -} - -.c4 > div { - width: 50%; - display: inline-block; - box-sizing: border-box; - position: relative; -} - -.c4 select { - width: 100%; - box-sizing: border-box; - cursor: pointer; -} - -
-
-
+ -
-
- -
-
-
-
-
- Travel Preferences -
-
-
-
- -
-
- -
-
-
-
- + + + + +`; + +exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 2`] = ` +.c0 { + height: 90vh; +} + +
+
`; -exports[`Storyshots StopViewerOverlay Default 1`] = ` +exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 1`] = ` - `; -exports[`Storyshots StopViewerOverlay Default 2`] = ` +exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 2`] = ` .c0 { height: 90vh; } @@ -201677,7 +230021,7 @@ exports[`Storyshots StopViewerOverlay Default 2`] = `
`; -exports[`Storyshots StopViewerOverlay With Custom Marker 1`] = ` +exports[`Storyshots TransitVehicleOverlay Route Color Background 1`] = ` - `; -exports[`Storyshots StopViewerOverlay With Custom Marker 2`] = ` +exports[`Storyshots TransitVehicleOverlay Route Color Background 2`] = ` .c0 { height: 90vh; } @@ -201735,7 +230277,7 @@ exports[`Storyshots StopViewerOverlay With Custom Marker 2`] = `
`; -exports[`Storyshots StopsOverlay Default 1`] = ` +exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 1`] = ` - + `; -exports[`Storyshots StopsOverlay Default 2`] = ` +exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 2`] = ` .c0 { height: 90vh; } @@ -201782,7 +230534,7 @@ exports[`Storyshots StopsOverlay Default 2`] = `
`; -exports[`Storyshots StopsOverlay Flex Stops 1`] = ` +exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 1`] = ` - - - - - - - - -`; - -exports[`Storyshots StopsOverlay Flex Stops 2`] = ` -.c0 { - height: 90vh; -} - -
-
-
-`; - -exports[`Storyshots StopsOverlay No Min Zoom 1`] = ` - - - - - - With MapLibreGL, strong performance can be achieved without needing to rely on minZoom - - - + "heading": null, + "label": "", + "lastUpdated": null, + "lat": 0, + "lon": 0, + "routeColor": "#FFFF00", + "routeShortName": "FH", + "speed": null, + "stopRelationship": null, + "trip": Object { + "pattern": Object { + "id": "UGF0dGVybjprY206MTAyNjM4OjA6MDE", + }, + }, + "vehicleId": "kcm:406", + }, + ] + } + /> `; -exports[`Storyshots StopsOverlay No Min Zoom 2`] = ` +exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 2`] = ` .c0 { height: 90vh; } @@ -202512,7 +230792,7 @@ exports[`Storyshots StopsOverlay No Min Zoom 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 1`] = ` +exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 1`] = ` `; -exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 2`] = ` +exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Bike Only Itinerary 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots TransitiveOverlay Bike Only Itinerary 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Bike Rental Itinerary 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots TransitiveOverlay Bike Rental Itinerary 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Bike Rental Transit Itinerary 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots TransitiveOverlay Bike Rental Transit Itinerary 2`] = ` .c0 { height: 90vh; } @@ -202732,7 +231806,7 @@ exports[`Storyshots TransitVehicleOverlay Custom Mode Icon 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Default 1`] = ` +exports[`Storyshots TransitiveOverlay Bike Transit Bike Itinerary 1`] = ` - + + + + + + + + `; -exports[`Storyshots TransitVehicleOverlay Default 2`] = ` +exports[`Storyshots TransitiveOverlay Bike Transit Bike Itinerary 2`] = ` .c0 { height: 90vh; } @@ -202952,235 +232095,48 @@ exports[`Storyshots TransitVehicleOverlay Default 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 1`] = ` +exports[`Storyshots TransitiveOverlay E Scooter Rental Itinerary 1`] = ` - - - + formats={Object {}} + locale="en-US" + messages={Object {}} + onError={[Function]} + textComponent={Symbol(react.fragment)} +> + + + + + + [Function] + + + `; -exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route Color Absent 2`] = ` +exports[`Storyshots TransitiveOverlay E Scooter Rental Itinerary 2`] = ` .c0 { height: 90vh; } @@ -203200,7 +232156,7 @@ exports[`Storyshots TransitVehicleOverlay Default Route Color When Vehicle Route
`; -exports[`Storyshots TransitVehicleOverlay Inner Caret 1`] = ` +exports[`Storyshots TransitiveOverlay E Scooter Rental Transit Itinerary 1`] = ` - + + + + [Function] + + + `; -exports[`Storyshots TransitVehicleOverlay Inner Caret 2`] = ` +exports[`Storyshots TransitiveOverlay E Scooter Rental Transit Itinerary 2`] = ` .c0 { height: 90vh; } @@ -203421,7 +232217,7 @@ exports[`Storyshots TransitVehicleOverlay Inner Caret 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 1`] = ` +exports[`Storyshots TransitiveOverlay Empty 1`] = ` - `; -exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 2`] = ` +exports[`Storyshots TransitiveOverlay Empty 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Flex Itinerary 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots TransitiveOverlay Flex Itinerary 2`] = ` .c0 { height: 90vh; } @@ -203643,7 +232594,7 @@ exports[`Storyshots TransitVehicleOverlay Outer Caret With Custom Size 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 1`] = ` +exports[`Storyshots TransitiveOverlay OTP 2 Scooter Itinerary 1`] = ` - + + zoom={11} + > + + [Function] + + + + + + +`; + +exports[`Storyshots TransitiveOverlay OTP 2 Scooter Itinerary 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Park And Ride Itinerary 1`] = ` + + + + + + + + + + + + + + +`; + +exports[`Storyshots TransitiveOverlay Park And Ride Itinerary 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Tnc Transit Itinerary 1`] = ` + + + + + + + + + + + `; -exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 2`] = ` +exports[`Storyshots TransitiveOverlay Tnc Transit Itinerary 2`] = ` .c0 { height: 90vh; } @@ -203900,7 +233242,7 @@ exports[`Storyshots TransitVehicleOverlay Rotating Icons No Caret 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Route Color Background 1`] = ` +exports[`Storyshots TransitiveOverlay Walk Interlined Transit Itinerary 1`] = ` - + + zoom={12.5} + > + + + + + + `; -exports[`Storyshots TransitVehicleOverlay Route Color Background 2`] = ` +exports[`Storyshots TransitiveOverlay Walk Interlined Transit Itinerary 2`] = ` .c0 { height: 90vh; } @@ -204156,7 +233873,7 @@ exports[`Storyshots TransitVehicleOverlay Route Color Background 2`] = `
`; -exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 1`] = ` +exports[`Storyshots TransitiveOverlay Walk Transit Transfer Itinerary 1`] = ` - + + zoom={14} + > + + + + + + `; -exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Caret 2`] = ` +exports[`Storyshots TransitiveOverlay Walk Transit Transfer Itinerary 2`] = ` .c0 { height: 90vh; } @@ -204413,7 +234234,7 @@ exports[`Storyshots TransitVehicleOverlay Route Color Background With Inner Care
`; -exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 1`] = ` +exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary 1`] = ` - + + + + + + + + + + +`; + +exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary With No Intermediate Stops 1`] = ` + + + + + + zoom={13} + > + + + + + + `; -exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparency On Hover 2`] = ` +exports[`Storyshots TransitiveOverlay Walk Transit Walk Itinerary With No Intermediate Stops 2`] = ` .c0 { height: 90vh; } @@ -204671,7 +234670,7 @@ exports[`Storyshots TransitVehicleOverlay Route Color Background With Transparen
`; -exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 1`] = ` +exports[`Storyshots TransitiveOverlay Walking Itinerary 1`] = ` - + + + + + + + + `; -exports[`Storyshots TransitVehicleOverlay Route Numbers Only With Custom Size And Padding 2`] = ` +exports[`Storyshots TransitiveOverlay Walking Itinerary 2`] = ` .c0 { height: 90vh; } @@ -214240,7 +244158,7 @@ exports[`Storyshots TripDetails OTP 2 Flex Itinerary 1`] = ` "lat": 40.23236350185715, "lon": -104.98809814453126, "name": "60plusride-co-us:area_626", - "stopId": "60plusride-co-us:area_626", + "stopId": "60plusride-co-us:area_626_flexed_to", "stopIndex": 0, "vertexType": "TRANSIT", }, @@ -222366,14 +252284,21520 @@ exports[`Storyshots TripViewerOverlay With Path Styling 1`] = ` "wheelchairAccessible": 1, } } - visible={true} + visible={true} + /> + + + +`; + +exports[`Storyshots TripViewerOverlay With Path Styling 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots VehicleRentalOverlay Rental Bicycles 1`] = ` + + + + + + + +`; + +exports[`Storyshots VehicleRentalOverlay Rental Bicycles 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots VehicleRentalOverlay Rental Bicycles Visibility Controlled By Knob 1`] = ` + + + + + + + +`; + +exports[`Storyshots VehicleRentalOverlay Rental Bicycles Visibility Controlled By Knob 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots VehicleRentalOverlay Rental Cars 1`] = ` + + + + + + + +`; + +exports[`Storyshots VehicleRentalOverlay Rental Cars 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots VehicleRentalOverlay Rental E Scooters 1`] = ` + + + + `; -exports[`Storyshots TripViewerOverlay With Path Styling 2`] = ` +exports[`Storyshots VehicleRentalOverlay Rental E Scooters 2`] = ` +.c0 { + height: 90vh; +} + +
+
+
+`; + +exports[`Storyshots VehicleRentalOverlay Rental E Scooters With Custom Naming 1`] = ` + + + + + + + +`; + +exports[`Storyshots VehicleRentalOverlay Rental E Scooters With Custom Naming 2`] = ` .c0 { height: 90vh; } From 7428e961270c6da278a12c8d8e8646943ad1d290 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Thu, 17 Aug 2023 18:27:37 +0000 Subject: [PATCH 32/34] chore(release): 10.0.0 [skip ci] # [@opentripplanner/core-utils-v10.0.0](https://github.com/opentripplanner/otp-ui/compare/@opentripplanner/core-utils-v9.0.3...@opentripplanner/core-utils-v10.0.0) (2023-08-17) ### Bug Fixes * **core-utils:** Add field leg.headsign to graphql plan query, remove trip.tripHeadsign. ([27ef271](https://github.com/opentripplanner/otp-ui/commit/27ef271c47a58e7f8ecb348b670e30b1a30e8a1a)) * **core-utils:** add walk speed to query ([2d55c1b](https://github.com/opentripplanner/otp-ui/commit/2d55c1b4c7ef16bacd770a27c82fa0bf0c5b9948)) * **core-utils:** remove old walkSpeed query-param to reduce interference with new mode selector ([2438812](https://github.com/opentripplanner/otp-ui/commit/2438812f059a325d3f25b030f32d993d4250b6ee)) ### BREAKING CHANGES * **core-utils:** trip.tripHeadsign is no longer returned by the plan queries made by query-gen. --- packages/core-utils/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core-utils/package.json b/packages/core-utils/package.json index 997bf124d..a8e166540 100644 --- a/packages/core-utils/package.json +++ b/packages/core-utils/package.json @@ -1,6 +1,6 @@ { "name": "@opentripplanner/core-utils", - "version": "9.0.3", + "version": "10.0.0", "description": "Core functionality that is shared among numerous UI components", "engines": { "node": ">=13" From cd0972ad5d3ae822a0621486f65e3d4b9a9d6c09 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Fri, 18 Aug 2023 16:44:03 -0700 Subject: [PATCH 33/34] deps(trip-form): new core-utils --- packages/trip-form/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/trip-form/package.json b/packages/trip-form/package.json index 75d18d637..cbb6104dd 100644 --- a/packages/trip-form/package.json +++ b/packages/trip-form/package.json @@ -10,7 +10,7 @@ "types": "lib/index.d.ts", "private": false, "dependencies": { - "@opentripplanner/core-utils": "^9.0.2", + "@opentripplanner/core-utils": "^10.0.0", "@floating-ui/react": "^0.19.2", "@styled-icons/bootstrap": "^10.34.0", "@styled-icons/boxicons-regular": "^10.38.0", From 7c6b60e0cb64e987a667fff35cee3b4f5303d645 Mon Sep 17 00:00:00 2001 From: Daniel Heppner Date: Mon, 21 Aug 2023 12:15:39 -0700 Subject: [PATCH 34/34] chore: update snapshots --- __snapshots__/storybook.test.ts.snap | 551 +++++++++++++++++++++++++++ 1 file changed, 551 insertions(+) diff --git a/__snapshots__/storybook.test.ts.snap b/__snapshots__/storybook.test.ts.snap index 5fc520284..6caf4bff2 100644 --- a/__snapshots__/storybook.test.ts.snap +++ b/__snapshots__/storybook.test.ts.snap @@ -237912,6 +237912,557 @@ Array [ ] `; +exports[`Storyshots Trip Form Components/Metro Mode Selector Metro Mode Selector 1`] = ` + + + +`; + +exports[`Storyshots Trip Form Components/Metro Mode Selector Metro Mode Selector 2`] = ` +.c2 { + display: inline-block; + vertical-align: middle; + overflow: hidden; +} + +.c3 { + display: inline-block; + -webkit-clip: rect(0,0,0,0); + clip: rect(0,0,0,0); + height: 0; + overflow: hidden; + position: absolute; + width: 0; +} + +.c0 { + border: none; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + gap: 0 3px; + margin: 0 4px 0 0; + padding: 0; +} + +.c0 > legend { + -webkit-clip: rect(0,0,0,0); + clip: rect(0,0,0,0); + height: 0; + overflow: hidden; + position: absolute; + width: 0; +} + +.c1 { + position: relative; +} + +.c1 > label { + background: #fff; + border-radius: 5px; + border: 2px solid #666; + cursor: pointer; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + padding: 0.75rem 0.75rem; + -webkit-transition: all 250ms cubic-bezier(0.27,0.01,0.38,1.06); + transition: all 250ms cubic-bezier(0.27,0.01,0.38,1.06); + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-box-pack: center; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; + aspect-ratio: 1/1; +} + +.c1:not(:last-of-type) > label { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} + +.c1:not(:first-of-type) > label { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} + +.c1 > label:hover { + background: #eee; + border-color: #333; + box-shadow: rgba(0,0,0,0.1) 0 0 20px; +} + +.c1 > input { + -webkit-clip: rect(0,0,0,0); + clip: rect(0,0,0,0); + height: 0; + overflow: hidden; + position: absolute; + width: 0; + left: -20px; + position: absolute; +} + +.c1 > button { + -webkit-clip: rect(0,0,0,0); + clip: rect(0,0,0,0); + height: 0; + overflow: hidden; + position: absolute; + width: 0; + background: none; + border: none; + bottom: 0; + left: 4px; + position: absolute; + right: 4px; +} + +.c1 > button:focus { + -webkit-clip: initial; + clip: initial; + height: initial; + width: initial; +} + +.c1 > input:checked + label { + background: #666; +} + +.c1 > input:checked + label, +.c1 > input:checked ~ button { + color: white; + fill: currentcolor; +} + +.c1 > input:focus + label { + outline: 5px auto blue; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -4px; +} + +.c1 > input:checked + label:hover { + background: #333; +} + +.c1 > label > svg { + color: #666; + display: inline-block; + height: 32px; + margin: auto; + vertical-align: middle; + width: 32px; + fill: currentcolor; +} + +.c1 > input:checked + label > svg { + color: #eee; +} + +
+ + Select a transit mode + + + + + + + + + + + + + + + + + + + + + +
+`; + exports[`Storyshots TripDetails Bike Only Itinerary 1`] = `