mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
d92a761f6e
Summary: - Showing nudge to individual users to sign up for free team plan. - Implementing billing page to upgrade from free team to pro. - New modal with upgrade options and free team site signup. - Integrating Stripe-hosted UI for checkout and plan management. Test Plan: updated tests Reviewers: georgegevoian Reviewed By: georgegevoian Subscribers: paulfitz Differential Revision: https://phab.getgrist.com/D3456
47 lines
1.9 KiB
TypeScript
47 lines
1.9 KiB
TypeScript
import {StringUnion} from 'app/common/StringUnion';
|
|
|
|
export const SortPref = StringUnion("name", "date");
|
|
export type SortPref = typeof SortPref.type;
|
|
|
|
export const ViewPref = StringUnion("list", "icons");
|
|
export type ViewPref = typeof ViewPref.type;
|
|
|
|
// A collection of preferences related to a user or org (or combination).
|
|
export interface Prefs {
|
|
// A dummy field used only in tests.
|
|
placeholder?: string;
|
|
}
|
|
|
|
// A collection of preferences related to a user or org (or combination).
|
|
export interface UserPrefs extends Prefs {
|
|
// Whether to ask the user to fill out a form about their use-case, on opening the DocMenu page.
|
|
// Set to true on first login, then reset when the form is closed, so that it only shows once.
|
|
showNewUserQuestions?: boolean;
|
|
// Whether to record a new sign-up event via Google Tag Manager. Set to true on first login, then
|
|
// reset on first page load (after the event is sent), so that it's only recorded once.
|
|
recordSignUpEvent?: boolean;
|
|
}
|
|
|
|
export interface UserOrgPrefs extends Prefs {
|
|
docMenuSort?: SortPref;
|
|
docMenuView?: ViewPref;
|
|
|
|
// List of example docs that the user has seen and dismissed the welcome card for.
|
|
// The numbers are the `id` from IExampleInfo in app/client/ui/ExampleInfo.
|
|
// By living in UserOrgPrefs, this applies only to the examples-containing org.
|
|
seenExamples?: number[];
|
|
|
|
// Whether the user should see the onboarding tour of Grist. False by default, since existing
|
|
// users should not see it. New users get this set to true when the user is created. This
|
|
// applies to the personal org only; the tour is currently only shown there.
|
|
showGristTour?: boolean;
|
|
|
|
// List of document IDs where the user has seen and dismissed the document tour.
|
|
seenDocTours?: string[];
|
|
|
|
// Whether the user seen the nudge to upgrade to Free Team Site and dismissed it.
|
|
seenFreeTeamUpgradeNudge?: boolean;
|
|
}
|
|
|
|
export type OrgPrefs = Prefs;
|