2023-11-28 09:06:47 +01:00
|
|
|
---
|
|
|
|
features:
|
|
|
|
|
|
|
|
juno-onboarding:
|
2024-01-30 15:56:09 +01:00
|
|
|
description: A feature that shows the onboarding flow.
|
2023-11-28 09:06:47 +01:00
|
|
|
|
|
|
|
variables:
|
2023-12-24 13:38:45 +01:00
|
|
|
conditions:
|
|
|
|
description: >
|
|
|
|
A collection of out the box conditional expressions to be
|
|
|
|
used in determining whether a card should show or not.
|
|
|
|
Each entry maps to a valid JEXL expression.
|
2024-01-30 15:56:09 +01:00
|
|
|
type: Map<ConditionName, String>
|
|
|
|
string-alias: ConditionName
|
2023-12-24 13:38:45 +01:00
|
|
|
default: {
|
|
|
|
ALWAYS: "true",
|
|
|
|
NEVER: "false"
|
|
|
|
}
|
2023-11-28 09:06:47 +01:00
|
|
|
cards:
|
|
|
|
description: Collection of user facing onboarding cards.
|
2024-01-30 15:56:09 +01:00
|
|
|
type: Map<OnboardingCardKey, OnboardingCardData>
|
|
|
|
string-alias: OnboardingCardKey
|
2023-11-28 09:06:47 +01:00
|
|
|
default:
|
|
|
|
default-browser:
|
|
|
|
card-type: default-browser
|
|
|
|
title: juno_onboarding_default_browser_title_nimbus_2
|
|
|
|
ordering: 10
|
2024-02-21 18:22:05 +01:00
|
|
|
body: juno_onboarding_default_browser_description_nimbus_3
|
2023-11-28 09:06:47 +01:00
|
|
|
image-res: ic_onboarding_welcome
|
|
|
|
primary-button-label: juno_onboarding_default_browser_positive_button
|
|
|
|
secondary-button-label: juno_onboarding_default_browser_negative_button
|
|
|
|
|
|
|
|
add-search-widget:
|
|
|
|
card-type: add-search-widget
|
|
|
|
enabled: false
|
|
|
|
title: juno_onboarding_add_search_widget_title
|
|
|
|
body: juno_onboarding_add_search_widget_description
|
|
|
|
image-res: ic_onboarding_search_widget
|
|
|
|
ordering: 15
|
|
|
|
primary-button-label: juno_onboarding_add_search_widget_positive_button
|
|
|
|
secondary-button-label: juno_onboarding_add_search_widget_negative_button
|
|
|
|
|
|
|
|
sync-sign-in:
|
|
|
|
card-type: sync-sign-in
|
|
|
|
title: juno_onboarding_sign_in_title_2
|
|
|
|
body: juno_onboarding_sign_in_description_2
|
|
|
|
image-res: ic_onboarding_sync
|
|
|
|
ordering: 20
|
|
|
|
primary-button-label: juno_onboarding_sign_in_positive_button
|
|
|
|
secondary-button-label: juno_onboarding_sign_in_negative_button
|
|
|
|
|
|
|
|
notification-permission:
|
|
|
|
card-type: notification-permission
|
|
|
|
title: juno_onboarding_enable_notifications_title_nimbus_2
|
|
|
|
body: juno_onboarding_enable_notifications_description_nimbus_2
|
|
|
|
image-res: ic_notification_permission
|
|
|
|
ordering: 30
|
|
|
|
primary-button-label: juno_onboarding_enable_notifications_positive_button
|
|
|
|
secondary-button-label: juno_onboarding_enable_notifications_negative_button
|
|
|
|
|
|
|
|
objects:
|
|
|
|
|
|
|
|
OnboardingCardData:
|
|
|
|
description: An object to describe a user facing onboarding card.
|
|
|
|
fields:
|
|
|
|
card-type:
|
|
|
|
type: OnboardingCardType
|
|
|
|
description: The type of the card.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: default-browser
|
|
|
|
enabled:
|
|
|
|
type: Boolean
|
|
|
|
description: If true, this card is shown to the user.
|
|
|
|
default: true
|
|
|
|
title:
|
|
|
|
type: Text
|
|
|
|
description: The title text displayed to the user.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: ""
|
|
|
|
body:
|
|
|
|
type: Text
|
|
|
|
description: The message text displayed to the user. May contain linkable text.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: ""
|
|
|
|
image-res:
|
|
|
|
type: Image
|
|
|
|
description: The resource id of the image to be displayed.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: ic_onboarding_welcome
|
|
|
|
ordering:
|
|
|
|
type: Int
|
|
|
|
description: Used to sequence the cards.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: 0
|
|
|
|
primary-button-label:
|
|
|
|
type: Text
|
|
|
|
description: The text to display on the primary button.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: ""
|
|
|
|
secondary-button-label:
|
|
|
|
type: Text
|
|
|
|
description: The text to display on the secondary button.
|
|
|
|
# This should never be defaulted.
|
|
|
|
default: ""
|
2023-12-24 13:38:45 +01:00
|
|
|
prerequisites:
|
2024-01-30 15:56:09 +01:00
|
|
|
type: List<ConditionName>
|
2023-12-24 13:38:45 +01:00
|
|
|
description: >
|
|
|
|
A list of strings corresponding to targeting expressions.
|
|
|
|
The card will be shown if all expressions are `true` and if
|
|
|
|
no expressions in the `disqualifiers` table are true, or
|
|
|
|
if the `disqualifiers` table is empty.
|
|
|
|
default: [ ALWAYS ]
|
|
|
|
disqualifiers:
|
2024-01-30 15:56:09 +01:00
|
|
|
type: List<ConditionName>
|
2023-12-24 13:38:45 +01:00
|
|
|
description: >
|
|
|
|
A list of strings corresponding to targeting expressions.
|
|
|
|
The card will not be shown if any expression is `true`.
|
|
|
|
default: [ NEVER ]
|
2023-11-28 09:06:47 +01:00
|
|
|
|
|
|
|
enums:
|
|
|
|
|
|
|
|
OnboardingCardType:
|
|
|
|
description: An enum to describe a type of card.
|
|
|
|
variants:
|
|
|
|
default-browser:
|
|
|
|
description: Allows user to set Firefox as the default browser.
|
|
|
|
sync-sign-in:
|
|
|
|
description: Allows user to sync with a Firefox account.
|
|
|
|
notification-permission:
|
|
|
|
description: Allows user to enable notification permission.
|
|
|
|
add-search-widget:
|
|
|
|
description: Allows user to add search widget to homescreen.
|