@kelpie/ui 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/resources/attendances.d.ts +13 -0
- package/dist/api/resources/attendances.d.ts.map +1 -0
- package/dist/api/resources/attendances.js +34 -0
- package/dist/api/resources/attendances.js.map +1 -0
- package/dist/api/resources/eventAssociations.d.ts +12 -0
- package/dist/api/resources/eventAssociations.d.ts.map +1 -0
- package/dist/api/resources/eventAssociations.js +25 -0
- package/dist/api/resources/eventAssociations.js.map +1 -0
- package/dist/api/resources/events.d.ts +17 -0
- package/dist/api/resources/events.d.ts.map +1 -0
- package/dist/api/resources/events.js +40 -0
- package/dist/api/resources/events.js.map +1 -0
- package/dist/api/resources/handbookSeed.d.ts +11 -0
- package/dist/api/resources/handbookSeed.d.ts.map +1 -0
- package/dist/api/resources/handbookSeed.js +43 -0
- package/dist/api/resources/handbookSeed.js.map +1 -0
- package/dist/api/resources/moduleSettings.d.ts +10 -0
- package/dist/api/resources/moduleSettings.d.ts.map +1 -1
- package/dist/api/resources/moduleSettings.js +21 -0
- package/dist/api/resources/moduleSettings.js.map +1 -1
- package/dist/api/resources/planItems.d.ts +4 -4
- package/dist/api/resources/planItems.d.ts.map +1 -1
- package/dist/api/resources/planItems.js +1 -1
- package/dist/api/resources/planItems.js.map +1 -1
- package/dist/api/resources/publicConfig.js +3 -3
- package/dist/api/resources/sampleData.d.ts.map +1 -1
- package/dist/api/resources/sampleData.js +2 -0
- package/dist/api/resources/sampleData.js.map +1 -1
- package/dist/api/resources/session.d.ts +22 -1
- package/dist/api/resources/session.d.ts.map +1 -1
- package/dist/api/resources/session.js +43 -1
- package/dist/api/resources/session.js.map +1 -1
- package/dist/api/resources/workspace.d.ts.map +1 -1
- package/dist/api/resources/workspace.js +2 -3
- package/dist/api/resources/workspace.js.map +1 -1
- package/dist/app/KelpieApp.d.ts.map +1 -1
- package/dist/app/KelpieApp.js +5 -1
- package/dist/app/KelpieApp.js.map +1 -1
- package/dist/components/ActivitiesPanel.d.ts.map +1 -1
- package/dist/components/ActivitiesPanel.js +2 -0
- package/dist/components/ActivitiesPanel.js.map +1 -1
- package/dist/components/AddressesField.d.ts +23 -0
- package/dist/components/AddressesField.d.ts.map +1 -0
- package/dist/components/AddressesField.js +215 -0
- package/dist/components/AddressesField.js.map +1 -0
- package/dist/components/CountrySearch.d.ts +16 -0
- package/dist/components/CountrySearch.d.ts.map +1 -0
- package/dist/components/CountrySearch.js +30 -0
- package/dist/components/CountrySearch.js.map +1 -0
- package/dist/components/EnvironmentBanner.d.ts +0 -12
- package/dist/components/EnvironmentBanner.d.ts.map +1 -1
- package/dist/components/EnvironmentBanner.js +21 -6
- package/dist/components/EnvironmentBanner.js.map +1 -1
- package/dist/components/InlineEdit.d.ts +7 -1
- package/dist/components/InlineEdit.d.ts.map +1 -1
- package/dist/components/InlineEdit.js +8 -1
- package/dist/components/InlineEdit.js.map +1 -1
- package/dist/components/LinkedEventsPanel.d.ts +11 -0
- package/dist/components/LinkedEventsPanel.d.ts.map +1 -0
- package/dist/components/LinkedEventsPanel.js +18 -0
- package/dist/components/LinkedEventsPanel.js.map +1 -0
- package/dist/components/NotesPanel.d.ts +4 -6
- package/dist/components/NotesPanel.d.ts.map +1 -1
- package/dist/components/NotesPanel.js +39 -3
- package/dist/components/NotesPanel.js.map +1 -1
- package/dist/components/PlanAttention.d.ts.map +1 -1
- package/dist/components/PlanAttention.js +3 -2
- package/dist/components/PlanAttention.js.map +1 -1
- package/dist/components/PlanPanel.d.ts +3 -3
- package/dist/components/PlanPanel.d.ts.map +1 -1
- package/dist/components/Shell.d.ts.map +1 -1
- package/dist/components/Shell.js +8 -2
- package/dist/components/Shell.js.map +1 -1
- package/dist/components/SocialNetworkIcon.d.ts +17 -0
- package/dist/components/SocialNetworkIcon.d.ts.map +1 -0
- package/dist/components/SocialNetworkIcon.js +39 -0
- package/dist/components/SocialNetworkIcon.js.map +1 -0
- package/dist/components/SocialProfilesField.d.ts +8 -0
- package/dist/components/SocialProfilesField.d.ts.map +1 -1
- package/dist/components/SocialProfilesField.js +19 -5
- package/dist/components/SocialProfilesField.js.map +1 -1
- package/dist/components/TimezoneSearch.d.ts +21 -0
- package/dist/components/TimezoneSearch.d.ts.map +1 -0
- package/dist/components/TimezoneSearch.js +27 -0
- package/dist/components/TimezoneSearch.js.map +1 -0
- package/dist/components/WorkspaceSwitcher.d.ts +8 -0
- package/dist/components/WorkspaceSwitcher.d.ts.map +1 -0
- package/dist/components/WorkspaceSwitcher.js +67 -0
- package/dist/components/WorkspaceSwitcher.js.map +1 -0
- package/dist/components/environmentTone.d.ts +10 -0
- package/dist/components/environmentTone.d.ts.map +1 -0
- package/dist/components/environmentTone.js +35 -0
- package/dist/components/environmentTone.js.map +1 -0
- package/dist/index.d.ts +25 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/timezones.d.ts +17 -0
- package/dist/lib/timezones.d.ts.map +1 -0
- package/dist/lib/timezones.js +39 -0
- package/dist/lib/timezones.js.map +1 -0
- package/dist/pages/CompaniesPage.d.ts.map +1 -1
- package/dist/pages/CompaniesPage.js +12 -11
- package/dist/pages/CompaniesPage.js.map +1 -1
- package/dist/pages/CompanyDetail.d.ts.map +1 -1
- package/dist/pages/CompanyDetail.js +23 -12
- package/dist/pages/CompanyDetail.js.map +1 -1
- package/dist/pages/DealDetail.d.ts.map +1 -1
- package/dist/pages/DealDetail.js +5 -1
- package/dist/pages/DealDetail.js.map +1 -1
- package/dist/pages/DecisionsPage.d.ts.map +1 -1
- package/dist/pages/DecisionsPage.js +7 -0
- package/dist/pages/DecisionsPage.js.map +1 -1
- package/dist/pages/EnquiryDetail.d.ts.map +1 -1
- package/dist/pages/EnquiryDetail.js +5 -1
- package/dist/pages/EnquiryDetail.js.map +1 -1
- package/dist/pages/EventDetail.d.ts +2 -0
- package/dist/pages/EventDetail.d.ts.map +1 -0
- package/dist/pages/EventDetail.js +332 -0
- package/dist/pages/EventDetail.js.map +1 -0
- package/dist/pages/EventsPage.d.ts +2 -0
- package/dist/pages/EventsPage.d.ts.map +1 -0
- package/dist/pages/EventsPage.js +176 -0
- package/dist/pages/EventsPage.js.map +1 -0
- package/dist/pages/ListDetail.d.ts.map +1 -1
- package/dist/pages/ListDetail.js +17 -0
- package/dist/pages/ListDetail.js.map +1 -1
- package/dist/pages/OpportunityDetail.d.ts.map +1 -1
- package/dist/pages/OpportunityDetail.js +5 -1
- package/dist/pages/OpportunityDetail.js.map +1 -1
- package/dist/pages/PartnershipDetail.d.ts.map +1 -1
- package/dist/pages/PartnershipDetail.js +5 -1
- package/dist/pages/PartnershipDetail.js.map +1 -1
- package/dist/pages/PeoplePage.d.ts.map +1 -1
- package/dist/pages/PeoplePage.js +13 -5
- package/dist/pages/PeoplePage.js.map +1 -1
- package/dist/pages/PersonDetail.d.ts.map +1 -1
- package/dist/pages/PersonDetail.js +94 -28
- package/dist/pages/PersonDetail.js.map +1 -1
- package/dist/pages/PlanningPage.d.ts.map +1 -1
- package/dist/pages/PlanningPage.js +6 -3
- package/dist/pages/PlanningPage.js.map +1 -1
- package/dist/pages/RaiseDetail.d.ts.map +1 -1
- package/dist/pages/RaiseDetail.js +5 -1
- package/dist/pages/RaiseDetail.js.map +1 -1
- package/dist/pages/RoleDetail.d.ts.map +1 -1
- package/dist/pages/RoleDetail.js +4 -1
- package/dist/pages/RoleDetail.js.map +1 -1
- package/dist/pages/SearchPage.d.ts.map +1 -1
- package/dist/pages/SearchPage.js +2 -1
- package/dist/pages/SearchPage.js.map +1 -1
- package/dist/pages/account/PreferencesPage.d.ts.map +1 -1
- package/dist/pages/account/PreferencesPage.js +2 -28
- package/dist/pages/account/PreferencesPage.js.map +1 -1
- package/dist/pages/account/SecurityPage.js +2 -2
- package/dist/pages/account/SecurityPage.js.map +1 -1
- package/dist/pages/admin/DataPage.js +10 -9
- package/dist/pages/admin/DataPage.js.map +1 -1
- package/dist/pages/admin/FieldsPage.js +1 -1
- package/dist/pages/admin/FieldsPage.js.map +1 -1
- package/dist/pages/admin/ModulesPage.d.ts.map +1 -1
- package/dist/pages/admin/ModulesPage.js +1 -0
- package/dist/pages/admin/ModulesPage.js.map +1 -1
- package/dist/pages/admin/WorkspaceSettingsPage.d.ts +12 -0
- package/dist/pages/admin/WorkspaceSettingsPage.d.ts.map +1 -1
- package/dist/pages/admin/WorkspaceSettingsPage.js +2 -21
- package/dist/pages/admin/WorkspaceSettingsPage.js.map +1 -1
- package/dist/pages/auth/AuthForm.d.ts +18 -0
- package/dist/pages/auth/AuthForm.d.ts.map +1 -1
- package/dist/pages/auth/AuthForm.js +17 -0
- package/dist/pages/auth/AuthForm.js.map +1 -1
- package/dist/pages/auth/AuthLayout.d.ts +5 -4
- package/dist/pages/auth/AuthLayout.d.ts.map +1 -1
- package/dist/pages/auth/AuthLayout.js +7 -5
- package/dist/pages/auth/AuthLayout.js.map +1 -1
- package/dist/pages/auth/AuthMethods.d.ts +12 -0
- package/dist/pages/auth/AuthMethods.d.ts.map +1 -0
- package/dist/pages/auth/AuthMethods.js +20 -0
- package/dist/pages/auth/AuthMethods.js.map +1 -0
- package/dist/pages/auth/RegionSwitcher.d.ts +10 -0
- package/dist/pages/auth/RegionSwitcher.d.ts.map +1 -0
- package/dist/pages/auth/RegionSwitcher.js +28 -0
- package/dist/pages/auth/RegionSwitcher.js.map +1 -0
- package/dist/pages/auth/SignInPage.d.ts +7 -0
- package/dist/pages/auth/SignInPage.d.ts.map +1 -1
- package/dist/pages/auth/SignInPage.js +5 -8
- package/dist/pages/auth/SignInPage.js.map +1 -1
- package/dist/pages/auth/SignUpPage.d.ts.map +1 -1
- package/dist/pages/auth/SignUpPage.js +9 -1
- package/dist/pages/auth/SignUpPage.js.map +1 -1
- package/dist/pages/auth/nextPath.d.ts +15 -0
- package/dist/pages/auth/nextPath.d.ts.map +1 -0
- package/dist/pages/auth/nextPath.js +17 -0
- package/dist/pages/auth/nextPath.js.map +1 -0
- package/dist/pages/auth/regionHref.d.ts +6 -0
- package/dist/pages/auth/regionHref.d.ts.map +1 -0
- package/dist/pages/auth/regionHref.js +8 -0
- package/dist/pages/auth/regionHref.js.map +1 -0
- package/dist/pages/dashboard/DashboardPage.d.ts +8 -0
- package/dist/pages/dashboard/DashboardPage.d.ts.map +1 -1
- package/dist/pages/dashboard/DashboardPage.js +5 -13
- package/dist/pages/dashboard/DashboardPage.js.map +1 -1
- package/dist/pages/dashboard/attention.d.ts +1 -8
- package/dist/pages/dashboard/attention.d.ts.map +1 -1
- package/dist/pages/dashboard/attention.js +21 -54
- package/dist/pages/dashboard/attention.js.map +1 -1
- package/dist/pages/dashboard/sections.d.ts.map +1 -1
- package/dist/pages/dashboard/sections.js +3 -2
- package/dist/pages/dashboard/sections.js.map +1 -1
- package/dist/pages/forms/FormActions.d.ts.map +1 -1
- package/dist/pages/forms/FormActions.js +7 -3
- package/dist/pages/forms/FormActions.js.map +1 -1
- package/dist/pages/onboarding/HandbookStepPage.d.ts +4 -8
- package/dist/pages/onboarding/HandbookStepPage.d.ts.map +1 -1
- package/dist/pages/onboarding/HandbookStepPage.js +13 -13
- package/dist/pages/onboarding/HandbookStepPage.js.map +1 -1
- package/dist/pages/onboarding/InvitesStepPage.d.ts.map +1 -1
- package/dist/pages/onboarding/InvitesStepPage.js +13 -7
- package/dist/pages/onboarding/InvitesStepPage.js.map +1 -1
- package/dist/pages/onboarding/ModulesStepPage.d.ts +11 -0
- package/dist/pages/onboarding/ModulesStepPage.d.ts.map +1 -0
- package/dist/pages/onboarding/ModulesStepPage.js +80 -0
- package/dist/pages/onboarding/ModulesStepPage.js.map +1 -0
- package/dist/pages/onboarding/OnboardingNav.d.ts +17 -0
- package/dist/pages/onboarding/OnboardingNav.d.ts.map +1 -0
- package/dist/pages/onboarding/OnboardingNav.js +37 -0
- package/dist/pages/onboarding/OnboardingNav.js.map +1 -0
- package/dist/pages/onboarding/OrganisationStepPage.d.ts +13 -0
- package/dist/pages/onboarding/OrganisationStepPage.d.ts.map +1 -0
- package/dist/pages/onboarding/OrganisationStepPage.js +59 -0
- package/dist/pages/onboarding/OrganisationStepPage.js.map +1 -0
- package/dist/pages/onboarding/WorkspaceStepPage.d.ts.map +1 -1
- package/dist/pages/onboarding/WorkspaceStepPage.js +25 -20
- package/dist/pages/onboarding/WorkspaceStepPage.js.map +1 -1
- package/dist/pages/onboarding/handbookTemplates.d.ts +19 -0
- package/dist/pages/onboarding/handbookTemplates.d.ts.map +1 -0
- package/dist/pages/onboarding/handbookTemplates.js +57 -0
- package/dist/pages/onboarding/handbookTemplates.js.map +1 -0
- package/dist/pages/onboarding/onboardingModules.d.ts +23 -0
- package/dist/pages/onboarding/onboardingModules.d.ts.map +1 -0
- package/dist/pages/onboarding/onboardingModules.js +153 -0
- package/dist/pages/onboarding/onboardingModules.js.map +1 -0
- package/dist/pages/onboarding/onboardingRerun.d.ts +21 -0
- package/dist/pages/onboarding/onboardingRerun.d.ts.map +1 -0
- package/dist/pages/onboarding/onboardingRerun.js +33 -0
- package/dist/pages/onboarding/onboardingRerun.js.map +1 -0
- package/dist/registry/context.d.ts +3 -1
- package/dist/registry/context.d.ts.map +1 -1
- package/dist/registry/context.js +4 -0
- package/dist/registry/context.js.map +1 -1
- package/dist/registry/contributions.d.ts +24 -0
- package/dist/registry/contributions.d.ts.map +1 -1
- package/dist/registry/contributions.js.map +1 -1
- package/dist/registry/registry.d.ts +4 -1
- package/dist/registry/registry.d.ts.map +1 -1
- package/dist/registry/registry.js +6 -0
- package/dist/registry/registry.js.map +1 -1
- package/package.json +4 -3
- package/src/api/resources/attendances.ts +54 -0
- package/src/api/resources/eventAssociations.ts +43 -0
- package/src/api/resources/events.ts +70 -0
- package/src/api/resources/handbookSeed.ts +63 -0
- package/src/api/resources/moduleSettings.ts +25 -0
- package/src/api/resources/planItems.ts +5 -5
- package/src/api/resources/publicConfig.ts +3 -3
- package/src/api/resources/sampleData.ts +2 -0
- package/src/api/resources/session.ts +59 -0
- package/src/api/resources/workspace.ts +2 -3
- package/src/app/KelpieApp.tsx +11 -3
- package/src/components/ActivitiesPanel.tsx +2 -0
- package/src/components/AddressesField.tsx +502 -0
- package/src/components/CountrySearch.tsx +71 -0
- package/src/components/EnvironmentBanner.tsx +23 -6
- package/src/components/InlineEdit.tsx +35 -1
- package/src/components/LinkedEventsPanel.tsx +50 -0
- package/src/components/NotesPanel.tsx +132 -15
- package/src/components/PlanAttention.tsx +5 -4
- package/src/components/PlanPanel.tsx +3 -3
- package/src/components/Shell.tsx +16 -1
- package/src/components/SocialNetworkIcon.tsx +88 -0
- package/src/components/SocialProfilesField.tsx +57 -10
- package/src/components/TimezoneSearch.tsx +67 -0
- package/src/components/WorkspaceSwitcher.tsx +136 -0
- package/src/components/environmentTone.ts +40 -0
- package/src/index.ts +49 -3
- package/src/lib/timezones.ts +43 -0
- package/src/pages/CompaniesPage.tsx +14 -13
- package/src/pages/CompanyDetail.tsx +59 -27
- package/src/pages/DealDetail.tsx +5 -0
- package/src/pages/DecisionsPage.tsx +7 -0
- package/src/pages/EnquiryDetail.tsx +7 -0
- package/src/pages/EventDetail.tsx +794 -0
- package/src/pages/EventsPage.tsx +382 -0
- package/src/pages/ListDetail.tsx +24 -0
- package/src/pages/OpportunityDetail.tsx +7 -0
- package/src/pages/PartnershipDetail.tsx +7 -0
- package/src/pages/PeoplePage.tsx +18 -5
- package/src/pages/PersonDetail.tsx +300 -100
- package/src/pages/PlanningPage.tsx +17 -14
- package/src/pages/RaiseDetail.tsx +5 -0
- package/src/pages/RoleDetail.tsx +8 -0
- package/src/pages/SearchPage.tsx +2 -1
- package/src/pages/account/PreferencesPage.tsx +2 -37
- package/src/pages/account/SecurityPage.tsx +6 -1
- package/src/pages/admin/DataPage.tsx +63 -21
- package/src/pages/admin/FieldsPage.tsx +1 -1
- package/src/pages/admin/ModulesPage.tsx +1 -0
- package/src/pages/admin/WorkspaceSettingsPage.tsx +10 -33
- package/src/pages/auth/AuthForm.tsx +38 -0
- package/src/pages/auth/AuthLayout.tsx +8 -4
- package/src/pages/auth/AuthMethods.tsx +29 -0
- package/src/pages/auth/RegionSwitcher.tsx +56 -0
- package/src/pages/auth/SignInPage.tsx +13 -14
- package/src/pages/auth/SignUpPage.tsx +32 -0
- package/src/pages/auth/nextPath.ts +17 -0
- package/src/pages/auth/regionHref.ts +10 -0
- package/src/pages/dashboard/DashboardPage.tsx +16 -48
- package/src/pages/dashboard/attention.ts +24 -78
- package/src/pages/dashboard/sections.tsx +8 -2
- package/src/pages/forms/FormActions.tsx +14 -8
- package/src/pages/onboarding/HandbookStepPage.tsx +21 -24
- package/src/pages/onboarding/InvitesStepPage.tsx +27 -19
- package/src/pages/onboarding/ModulesStepPage.tsx +145 -0
- package/src/pages/onboarding/OnboardingNav.tsx +97 -0
- package/src/pages/onboarding/OrganisationStepPage.tsx +130 -0
- package/src/pages/onboarding/WorkspaceStepPage.tsx +53 -38
- package/src/pages/onboarding/handbookTemplates.ts +77 -0
- package/src/pages/onboarding/onboardingModules.ts +202 -0
- package/src/pages/onboarding/onboardingRerun.ts +41 -0
- package/src/registry/context.ts +6 -0
- package/src/registry/contributions.ts +26 -0
- package/src/registry/registry.ts +12 -0
- package/src/styles.css +30 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvitesStepPage.js","sourceRoot":"","sources":["../../../src/pages/onboarding/InvitesStepPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"InvitesStepPage.js","sourceRoot":"","sources":["../../../src/pages/onboarding/InvitesStepPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Onboarding step 3: which optional modules this workspace runs.
|
|
3
|
+
*
|
|
4
|
+
* The workspace already exists. This step writes each of the six choices
|
|
5
|
+
* through `PATCH /v1/workspaces/:id/modules/:moduleId`, then optionally
|
|
6
|
+
* installs sample data, then moves on to invites. Defaults and explanations
|
|
7
|
+
* follow the organisation type on `?org=`. Other toggleable modules stay
|
|
8
|
+
* on; Admin → Modules is where they change later.
|
|
9
|
+
*/
|
|
10
|
+
export declare function ModulesStepPage(): React.JSX.Element;
|
|
11
|
+
//# sourceMappingURL=ModulesStepPage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModulesStepPage.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/ModulesStepPage.tsx"],"names":[],"mappings":"AAuBA;;;;;;;;GAQG;AAEH,wBAAgB,eAAe,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CA+GnD"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { useNavigate, useSearchParams } from 'react-router';
|
|
4
|
+
import { useSetModuleEnabled } from '../../api/resources/moduleSettings.js';
|
|
5
|
+
import { useInstallSampleData } from '../../api/resources/sampleData.js';
|
|
6
|
+
import { useSession } from '../../api/resources/session.js';
|
|
7
|
+
import { ErrorPanel, LoadingPanel } from '../../components/QueryState.js';
|
|
8
|
+
import { AuthLayout } from '../auth/AuthLayout.js';
|
|
9
|
+
import { organisationChoiceFromParam, organisationChoiceLabel } from './handbookTemplates.js';
|
|
10
|
+
import { OnboardingNav } from './OnboardingNav.js';
|
|
11
|
+
import { defaultOnboardingModuleState, onboardingModulesForChoice } from './onboardingModules.js';
|
|
12
|
+
import { isOnboardingRerun, ONBOARDING_ORG_PARAM, onboardingPath } from './onboardingRerun.js';
|
|
13
|
+
function modulesStepDescription(org) {
|
|
14
|
+
if (org === 'startup' || org === 'later') {
|
|
15
|
+
return 'Pick the parts of Kelpie your team needs today. Turn the rest on whenever you like — nothing here is permanent.';
|
|
16
|
+
}
|
|
17
|
+
return `Suggested for ${organisationChoiceLabel(org)}. Turn the rest on whenever you like — nothing here is permanent.`;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Onboarding step 3: which optional modules this workspace runs.
|
|
21
|
+
*
|
|
22
|
+
* The workspace already exists. This step writes each of the six choices
|
|
23
|
+
* through `PATCH /v1/workspaces/:id/modules/:moduleId`, then optionally
|
|
24
|
+
* installs sample data, then moves on to invites. Defaults and explanations
|
|
25
|
+
* follow the organisation type on `?org=`. Other toggleable modules stay
|
|
26
|
+
* on; Admin → Modules is where they change later.
|
|
27
|
+
*/
|
|
28
|
+
export function ModulesStepPage() {
|
|
29
|
+
const navigate = useNavigate();
|
|
30
|
+
const [searchParams] = useSearchParams();
|
|
31
|
+
const rerun = isOnboardingRerun(searchParams);
|
|
32
|
+
const org = organisationChoiceFromParam(searchParams.get(ONBOARDING_ORG_PARAM));
|
|
33
|
+
const modules = onboardingModulesForChoice(org);
|
|
34
|
+
const { session, isLoading } = useSession();
|
|
35
|
+
const setEnabled = useSetModuleEnabled();
|
|
36
|
+
const installSampleData = useInstallSampleData();
|
|
37
|
+
const [enabled, setEnabledState] = useState(() => defaultOnboardingModuleState(org));
|
|
38
|
+
const [seedSample, setSeedSample] = useState(false);
|
|
39
|
+
const [saving, setSaving] = useState(false);
|
|
40
|
+
function toggle(moduleId, next) {
|
|
41
|
+
setEnabledState((previous) => ({ ...previous, [moduleId]: next }));
|
|
42
|
+
}
|
|
43
|
+
function submit(event) {
|
|
44
|
+
event.preventDefault();
|
|
45
|
+
const workspaceId = session?.workspaceId;
|
|
46
|
+
if (workspaceId === null || workspaceId === undefined) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
setSaving(true);
|
|
50
|
+
persistChoices()
|
|
51
|
+
.then(async () => {
|
|
52
|
+
if (seedSample) {
|
|
53
|
+
await installSampleData.runAsync({ workspaceId });
|
|
54
|
+
}
|
|
55
|
+
navigate(onboardingPath('/onboarding/invites', rerun, org), { replace: true });
|
|
56
|
+
})
|
|
57
|
+
.catch(() => undefined)
|
|
58
|
+
.finally(() => {
|
|
59
|
+
setSaving(false);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
async function persistChoices() {
|
|
63
|
+
for (const choice of modules) {
|
|
64
|
+
await setEnabled.runAsync({
|
|
65
|
+
moduleId: choice.id,
|
|
66
|
+
enabled: enabled[choice.id] === true,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
const isPending = saving || setEnabled.isPending || installSampleData.isPending;
|
|
71
|
+
const workspaceId = session?.workspaceId;
|
|
72
|
+
const description = modulesStepDescription(org);
|
|
73
|
+
if (isLoading || workspaceId === null || workspaceId === undefined) {
|
|
74
|
+
return (_jsx(AuthLayout, { step: 3, title: "What do you want to use?", description: description, children: _jsx("div", { className: "mt-5", children: _jsx(LoadingPanel, { label: "Loading\u2026" }) }) }));
|
|
75
|
+
}
|
|
76
|
+
return (_jsx(AuthLayout, { step: 3, title: "What do you want to use?", description: description, children: _jsxs("form", { onSubmit: submit, className: "mt-5 space-y-3", children: [_jsx("ul", { className: "space-y-3", children: modules.map((choice) => (_jsx("li", { children: _jsxs("label", { className: "flex items-start gap-2 text-[12px] text-ink", children: [_jsx("input", { type: "checkbox", checked: enabled[choice.id] === true, onChange: (event) => {
|
|
77
|
+
toggle(choice.id, event.target.checked);
|
|
78
|
+
}, className: "mt-0.5 h-4 w-4 rounded border-border text-accent focus:ring-accent" }), _jsxs("span", { children: [_jsx("span", { className: "font-medium", children: choice.label }), _jsx("span", { className: "mt-0.5 block text-[11px] text-ink-muted", children: choice.description })] })] }) }, choice.id))) }), _jsxs("label", { className: "flex items-start gap-2 text-[12px] text-ink", children: [_jsx("input", { type: "checkbox", checked: seedSample, onChange: (event) => setSeedSample(event.target.checked), className: "mt-0.5 h-4 w-4 rounded border-border text-accent focus:ring-accent" }), _jsx("span", { children: "Fill it with sample data \u2014 a few companies, people, and records for the parts you turned on, so you are not staring at an empty screen. Clear it out any time." })] }), setEnabled.error !== null && _jsx(ErrorPanel, { error: setEnabled.error }), installSampleData.error !== null && _jsx(ErrorPanel, { error: installSampleData.error }), _jsx(OnboardingNav, { step: 3, nextLabel: "Next", nextPendingLabel: installSampleData.isPending ? 'Installing sample data…' : 'Saving…', isPending: isPending })] }) }));
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=ModulesStepPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModulesStepPage.js","sourceRoot":"","sources":["../../../src/pages/onboarding/ModulesStepPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { OnboardingStep } from '../auth/AuthLayout.tsx';
|
|
3
|
+
export interface OnboardingNavProps {
|
|
4
|
+
readonly step: OnboardingStep;
|
|
5
|
+
readonly nextLabel: string;
|
|
6
|
+
/** Shown while the step's request is in flight. */
|
|
7
|
+
readonly nextPendingLabel?: string;
|
|
8
|
+
readonly isPending?: boolean;
|
|
9
|
+
/** `submit` inside a form; `button` when the step only navigates. */
|
|
10
|
+
readonly nextType?: 'submit' | 'button';
|
|
11
|
+
readonly onNext?: () => void;
|
|
12
|
+
/** A third action under the row, such as Skip on invites. */
|
|
13
|
+
readonly extra?: ReactNode;
|
|
14
|
+
}
|
|
15
|
+
export declare function previousOnboardingPath(step: OnboardingStep, rerun?: boolean, org?: string | null): string | undefined;
|
|
16
|
+
export declare function OnboardingNav({ step, nextLabel, nextPendingLabel, isPending, nextType, onNext, extra, }: OnboardingNavProps): React.JSX.Element;
|
|
17
|
+
//# sourceMappingURL=OnboardingNav.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnboardingNav.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/OnboardingNav.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AA2B5D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAA;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAC3B;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,cAAc,EACpB,KAAK,UAAQ,EACb,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAClB,MAAM,GAAG,SAAS,CAMpB;AAED,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,SAAiB,EACjB,QAAmB,EACnB,MAAM,EACN,KAAK,GACN,EAAE,kBAAkB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAiCxC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useNavigate, useSearchParams } from 'react-router';
|
|
3
|
+
import { isOnboardingRerun, ONBOARDING_ORG_PARAM, onboardingPath } from './onboardingRerun.js';
|
|
4
|
+
/**
|
|
5
|
+
* The Previous / Next row every onboarding step shares.
|
|
6
|
+
*
|
|
7
|
+
* Forward still commits on the step that owns the form. This only moves
|
|
8
|
+
* between the five routes. Step 1 has no previous onboarding page, so
|
|
9
|
+
* Previous stays off there. The `rerun` and `org` queries are kept on
|
|
10
|
+
* Previous so a finished workspace that walks the wizard again still skips
|
|
11
|
+
* handbook seeding, and the modules step still sees the organisation type.
|
|
12
|
+
*/
|
|
13
|
+
const ONBOARDING_PATHS = {
|
|
14
|
+
1: '/onboarding/workspace',
|
|
15
|
+
2: '/onboarding/organisation',
|
|
16
|
+
3: '/onboarding/modules',
|
|
17
|
+
4: '/onboarding/invites',
|
|
18
|
+
5: '/onboarding/handbook',
|
|
19
|
+
};
|
|
20
|
+
const PRIMARY_CLASS = 'flex-1 rounded-md bg-accent px-3.5 py-2 text-[12px] font-semibold text-accent-fg transition hover:bg-accent-hover disabled:opacity-50';
|
|
21
|
+
const SECONDARY_CLASS = 'flex-1 rounded-md border border-border bg-surface px-3.5 py-2 text-[12px] font-medium text-ink-muted transition hover:bg-surface-raised disabled:opacity-50';
|
|
22
|
+
export function previousOnboardingPath(step, rerun = false, org) {
|
|
23
|
+
if (step === 1) {
|
|
24
|
+
return undefined;
|
|
25
|
+
}
|
|
26
|
+
return onboardingPath(ONBOARDING_PATHS[(step - 1)], rerun, org);
|
|
27
|
+
}
|
|
28
|
+
export function OnboardingNav({ step, nextLabel, nextPendingLabel, isPending = false, nextType = 'submit', onNext, extra, }) {
|
|
29
|
+
const navigate = useNavigate();
|
|
30
|
+
const [searchParams] = useSearchParams();
|
|
31
|
+
const rerun = isOnboardingRerun(searchParams);
|
|
32
|
+
const previousTo = previousOnboardingPath(step, rerun, searchParams.get(ONBOARDING_ORG_PARAM));
|
|
33
|
+
return (_jsxs("div", { className: "flex flex-col gap-2 pt-1", children: [_jsxs("div", { className: "flex gap-2", children: [previousTo !== undefined && (_jsx("button", { type: "button", disabled: isPending, onClick: () => {
|
|
34
|
+
navigate(previousTo, { replace: true });
|
|
35
|
+
}, className: SECONDARY_CLASS, children: "Previous" })), _jsx("button", { type: nextType, disabled: isPending, onClick: onNext, className: PRIMARY_CLASS, children: isPending && nextPendingLabel !== undefined ? nextPendingLabel : nextLabel })] }), extra] }));
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=OnboardingNav.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnboardingNav.js","sourceRoot":"","sources":["../../../src/pages/onboarding/OnboardingNav.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG3D,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE9F;;;;;;;;GAQG;AAEH,MAAM,gBAAgB,GAAG;IACvB,CAAC,EAAE,uBAAuB;IAC1B,CAAC,EAAE,0BAA0B;IAC7B,CAAC,EAAE,qBAAqB;IACxB,CAAC,EAAE,qBAAqB;IACxB,CAAC,EAAE,sBAAsB;CACjB,CAAA;AAEV,MAAM,aAAa,GACjB,uIAAuI,CAAA;AAEzI,MAAM,eAAe,GACnB,6JAA6J,CAAA;AAe/J,MAAM,UAAU,sBAAsB,CACpC,IAAoB,EACpB,KAAK,GAAG,KAAK,EACb,GAAmB;IAEnB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,cAAc,CAAC,gBAAgB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAmB,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;AACnF,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,QAAQ,EACnB,MAAM,EACN,KAAK,GACc;IACnB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,CAAC,YAAY,CAAC,GAAG,eAAe,EAAE,CAAA;IACxC,MAAM,KAAK,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAC7C,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAE9F,OAAO,CACL,eAAK,SAAS,EAAC,0BAA0B,aACvC,eAAK,SAAS,EAAC,YAAY,aACxB,UAAU,KAAK,SAAS,IAAI,CAC3B,iBACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,GAAG,EAAE;4BACZ,QAAQ,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;wBACzC,CAAC,EACD,SAAS,EAAE,eAAe,yBAGnB,CACV,EACD,iBACE,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,aAAa,YAEvB,SAAS,IAAI,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GACpE,IACL,EACL,KAAK,IACF,CACP,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Onboarding step 2: organisation type, then seed the starter handbook.
|
|
3
|
+
*
|
|
4
|
+
* The workspace already exists. This step writes pages through
|
|
5
|
+
* `POST /v1/workspaces/:id/handbook/seed`. "Choose later" seeds the original
|
|
6
|
+
* startup handbook. Changing the choice (via Previous) replaces pages only
|
|
7
|
+
* while they are still unedited starter stubs.
|
|
8
|
+
*
|
|
9
|
+
* A rerun still shows the choices, but does not seed or replace handbook
|
|
10
|
+
* pages. Next moves on to modules with those pages left alone.
|
|
11
|
+
*/
|
|
12
|
+
export declare function OrganisationStepPage(): React.JSX.Element;
|
|
13
|
+
//# sourceMappingURL=OrganisationStepPage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrganisationStepPage.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/OrganisationStepPage.tsx"],"names":[],"mappings":"AAiBA;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAqGxD"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { useNavigate, useSearchParams } from 'react-router';
|
|
4
|
+
import { useHandbookPages } from '../../api/resources/handbookPages.js';
|
|
5
|
+
import { useSeedHandbookForWorkspace } from '../../api/resources/handbookSeed.js';
|
|
6
|
+
import { ErrorPanel, LoadingPanel } from '../../components/QueryState.js';
|
|
7
|
+
import { AuthLayout } from '../auth/AuthLayout.js';
|
|
8
|
+
import { handbookTemplateForChoice, ORGANISATION_CHOICES, organisationChoiceFromParam, } from './handbookTemplates.js';
|
|
9
|
+
import { OnboardingNav } from './OnboardingNav.js';
|
|
10
|
+
import { isOnboardingRerun, ONBOARDING_ORG_PARAM, onboardingPath } from './onboardingRerun.js';
|
|
11
|
+
/**
|
|
12
|
+
* Onboarding step 2: organisation type, then seed the starter handbook.
|
|
13
|
+
*
|
|
14
|
+
* The workspace already exists. This step writes pages through
|
|
15
|
+
* `POST /v1/workspaces/:id/handbook/seed`. "Choose later" seeds the original
|
|
16
|
+
* startup handbook. Changing the choice (via Previous) replaces pages only
|
|
17
|
+
* while they are still unedited starter stubs.
|
|
18
|
+
*
|
|
19
|
+
* A rerun still shows the choices, but does not seed or replace handbook
|
|
20
|
+
* pages. Next moves on to modules with those pages left alone.
|
|
21
|
+
*/
|
|
22
|
+
export function OrganisationStepPage() {
|
|
23
|
+
const navigate = useNavigate();
|
|
24
|
+
const [searchParams] = useSearchParams();
|
|
25
|
+
const rerun = isOnboardingRerun(searchParams);
|
|
26
|
+
const seedHandbook = useSeedHandbookForWorkspace();
|
|
27
|
+
const { records: pages, isLoading } = useHandbookPages();
|
|
28
|
+
const [choice, setChoice] = useState(() => organisationChoiceFromParam(searchParams.get(ONBOARDING_ORG_PARAM)));
|
|
29
|
+
function goToModules() {
|
|
30
|
+
navigate(onboardingPath('/onboarding/modules', rerun, choice), { replace: true });
|
|
31
|
+
}
|
|
32
|
+
function submit(event) {
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
if (rerun) {
|
|
35
|
+
goToModules();
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
seedHandbook
|
|
39
|
+
.runAsync({
|
|
40
|
+
handbookTemplate: handbookTemplateForChoice(choice),
|
|
41
|
+
replace: pages.length > 0,
|
|
42
|
+
})
|
|
43
|
+
.then(() => {
|
|
44
|
+
goToModules();
|
|
45
|
+
})
|
|
46
|
+
.catch(() => undefined);
|
|
47
|
+
}
|
|
48
|
+
if (!rerun && isLoading) {
|
|
49
|
+
return (_jsx(AuthLayout, { step: 2, title: "What kind of organisation is this?", description: "This picks the starter handbook pages agents read to learn what your company is.", children: _jsx("div", { className: "mt-5", children: _jsx(LoadingPanel, { label: "Loading\u2026" }) }) }));
|
|
50
|
+
}
|
|
51
|
+
return (_jsx(AuthLayout, { step: 2, title: "What kind of organisation is this?", description: rerun
|
|
52
|
+
? 'Pick a type to continue.'
|
|
53
|
+
: 'This picks the starter handbook pages agents read to learn what your company is.', children: _jsxs("form", { onSubmit: submit, className: "mt-5 space-y-3", children: [_jsx("ul", { className: "grid gap-2 sm:grid-cols-2", children: ORGANISATION_CHOICES.map((option) => (_jsx("li", { className: option.id === 'later' ? 'h-full sm:col-span-2' : 'h-full', children: _jsxs("label", { className: `flex h-full cursor-pointer items-start gap-2 rounded-md border px-3 py-2 text-[12px] ${choice === option.id
|
|
54
|
+
? 'border-accent bg-accent/5 text-ink'
|
|
55
|
+
: 'border-border bg-surface text-ink'}`, children: [_jsx("input", { type: "radio", name: "organisation-type", value: option.id, checked: choice === option.id, disabled: seedHandbook.isPending, onChange: () => {
|
|
56
|
+
setChoice(option.id);
|
|
57
|
+
}, className: "mt-0.5 h-4 w-4 border-border text-accent focus:ring-accent disabled:opacity-50" }), _jsxs("span", { children: [_jsx("span", { className: "font-medium", children: option.label }), _jsx("span", { className: "mt-0.5 block text-[11px] text-ink-muted", children: option.description })] })] }) }, option.id))) }), seedHandbook.error !== null && _jsx(ErrorPanel, { error: seedHandbook.error }), _jsx(OnboardingNav, { step: 2, nextLabel: "Next", nextPendingLabel: "Preparing handbook\u2026", isPending: seedHandbook.isPending })] }) }));
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=OrganisationStepPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrganisationStepPage.js","sourceRoot":"","sources":["../../../src/pages/onboarding/OrganisationStepPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceStepPage.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/WorkspaceStepPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WorkspaceStepPage.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/WorkspaceStepPage.tsx"],"names":[],"mappings":"AAgDA,wBAAgB,iBAAiB,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAoHrD"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState } from 'react';
|
|
3
|
-
import { Link, Navigate, useNavigate } from 'react-router';
|
|
4
|
-
import { useInstallSampleData } from '../../api/resources/sampleData.js';
|
|
3
|
+
import { Link, Navigate, useNavigate, useSearchParams } from 'react-router';
|
|
5
4
|
import { useCreateWorkspace, useSession } from '../../api/resources/session.js';
|
|
6
5
|
import { ErrorPanel } from '../../components/QueryState.js';
|
|
7
|
-
import {
|
|
6
|
+
import { TextField } from '../auth/AuthForm.js';
|
|
8
7
|
import { AuthLayout } from '../auth/AuthLayout.js';
|
|
8
|
+
import { OnboardingNav } from './OnboardingNav.js';
|
|
9
|
+
import { isOnboardingRerun, ONBOARDING_ORG_PARAM, onboardingPath } from './onboardingRerun.js';
|
|
9
10
|
/**
|
|
10
11
|
* Onboarding step 1: the workspace, against `POST /v1/workspaces`.
|
|
11
12
|
*
|
|
@@ -13,9 +14,9 @@ import { AuthLayout } from '../auth/AuthLayout.js';
|
|
|
13
14
|
* no workspace, so until this succeeds every CRM endpoint answers `403`, and
|
|
14
15
|
* `SessionGate` sends anyone in that state here.
|
|
15
16
|
*
|
|
16
|
-
* One request
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* One request creates the workspace, seeds pipeline stages, and moves this
|
|
18
|
+
* session into it. The starter handbook is seeded on step 4 once the reader
|
|
19
|
+
* picks an organisation type.
|
|
19
20
|
*
|
|
20
21
|
* It sits outside `SessionGate`, because being sent here *is* what the gate does
|
|
21
22
|
* with an account that has no workspace, so gating it would loop. That leaves
|
|
@@ -42,14 +43,15 @@ function browserTimezone() {
|
|
|
42
43
|
}
|
|
43
44
|
export function WorkspaceStepPage() {
|
|
44
45
|
const navigate = useNavigate();
|
|
45
|
-
const
|
|
46
|
+
const [searchParams] = useSearchParams();
|
|
47
|
+
const rerun = isOnboardingRerun(searchParams);
|
|
48
|
+
const { isSignedOut, session } = useSession();
|
|
46
49
|
const createWorkspace = useCreateWorkspace();
|
|
47
|
-
const
|
|
50
|
+
const hasWorkspace = session?.workspaceId !== null && session?.workspaceId !== undefined;
|
|
48
51
|
const [name, setName] = useState('');
|
|
49
52
|
const [slug, setSlug] = useState('');
|
|
50
53
|
const [slugEdited, setSlugEdited] = useState(false);
|
|
51
54
|
const [timezone] = useState(browserTimezone);
|
|
52
|
-
const [seedSample, setSeedSample] = useState(false);
|
|
53
55
|
function changeName(value) {
|
|
54
56
|
setName(value);
|
|
55
57
|
if (!slugEdited) {
|
|
@@ -64,22 +66,25 @@ export function WorkspaceStepPage() {
|
|
|
64
66
|
event.preventDefault();
|
|
65
67
|
createWorkspace
|
|
66
68
|
.runAsync({ name: name.trim(), slug: slug.trim(), timezone })
|
|
67
|
-
.then(
|
|
68
|
-
|
|
69
|
-
// A refusal here does not block the wizard: the workspace itself is
|
|
70
|
-
// already created, and the invites step is what comes next either
|
|
71
|
-
// way. The error stays on screen so the reader sees what failed.
|
|
72
|
-
await installSampleData
|
|
73
|
-
.runAsync({ workspaceId: workspace.id })
|
|
74
|
-
.catch(() => undefined);
|
|
75
|
-
}
|
|
76
|
-
navigate('/onboarding/invites', { replace: true });
|
|
69
|
+
.then(() => {
|
|
70
|
+
navigate('/onboarding/organisation', { replace: true });
|
|
77
71
|
})
|
|
78
72
|
.catch(() => undefined);
|
|
79
73
|
}
|
|
80
74
|
if (isSignedOut) {
|
|
81
75
|
return _jsx(Navigate, { to: "/login", replace: true });
|
|
82
76
|
}
|
|
83
|
-
|
|
77
|
+
/**
|
|
78
|
+
* Previous on a later step lands here after the workspace already exists.
|
|
79
|
+
* Showing the create form again would offer a second POST that this account
|
|
80
|
+
* cannot use. Next is the only action that remains. A rerun keeps the flag
|
|
81
|
+
* so organisation does not seed handbook pages and the review step is skipped.
|
|
82
|
+
*/
|
|
83
|
+
if (hasWorkspace) {
|
|
84
|
+
return (_jsx(AuthLayout, { step: 1, title: "Your workspace is ready", description: "Use Next to choose your organisation type and starter handbook.", footer: _jsx(Link, { to: "/login", className: "font-medium text-accent hover:underline", children: "Sign in as somebody else" }), children: _jsx("div", { className: "mt-5", children: _jsx(OnboardingNav, { step: 1, nextLabel: "Next", nextType: "button", onNext: () => {
|
|
85
|
+
navigate(onboardingPath('/onboarding/organisation', rerun, searchParams.get(ONBOARDING_ORG_PARAM)), { replace: true });
|
|
86
|
+
} }) }) }));
|
|
87
|
+
}
|
|
88
|
+
return (_jsx(AuthLayout, { step: 1, title: "Create your workspace", description: "A workspace is your company brain \u2014 CRM records, handbook, and team.", footer: _jsx(Link, { to: "/login", className: "font-medium text-accent hover:underline", children: "Sign in as somebody else" }), children: _jsxs("form", { onSubmit: submit, className: "mt-5 space-y-3", children: [_jsx(TextField, { label: "Workspace name", value: name, onChange: changeName, placeholder: "Acme Labs", autoComplete: "organization", required: true }), _jsx(TextField, { label: "Slug", value: slug, onChange: changeSlug, hint: "Lowercase letters, digits, and hyphens. It appears in URLs.", mono: true, required: true }), _jsxs("p", { className: "text-[11px] text-ink-faint", children: ["Timezone: ", timezone, ". Change it later in Admin \u2192 Workspace."] }), createWorkspace.error !== null && _jsx(ErrorPanel, { error: createWorkspace.error }), _jsx(OnboardingNav, { step: 1, nextLabel: "Next", nextPendingLabel: "Creating\u2026", isPending: createWorkspace.isPending })] }) }));
|
|
84
89
|
}
|
|
85
90
|
//# sourceMappingURL=WorkspaceStepPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkspaceStepPage.js","sourceRoot":"","sources":["../../../src/pages/onboarding/WorkspaceStepPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"WorkspaceStepPage.js","sourceRoot":"","sources":["../../../src/pages/onboarding/WorkspaceStepPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE3E,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAiC,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAsB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAwB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAqB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE9F;;;;;;;;;;;;;;;GAeG;AAEH,yEAAyE;AACzE,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,IAAI;SACR,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;SAC5B,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;SACxB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACjB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe;IACtB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAA;AACzD,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,CAAC,YAAY,CAAC,GAAG,eAAe,EAAE,CAAA;IACxC,MAAM,KAAK,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAA;IAC7C,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAA;IAC7C,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAA;IAC5C,MAAM,YAAY,GAAG,OAAO,EAAE,WAAW,KAAK,IAAI,IAAI,OAAO,EAAE,WAAW,KAAK,SAAS,CAAA;IACxF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACpC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACpC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACnD,MAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAA;IAE5C,SAAS,UAAU,CAAC,KAAa;QAC/B,OAAO,CAAC,KAAK,CAAC,CAAA;QAEd,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,SAAS,UAAU,CAAC,KAAa;QAC/B,aAAa,CAAC,IAAI,CAAC,CAAA;QACnB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;IACzB,CAAC;IAED,SAAS,MAAM,CAAC,KAAgB;QAC9B,KAAK,CAAC,cAAc,EAAE,CAAA;QAEtB,eAAe;aACZ,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC;aAC5D,IAAI,CAAC,GAAG,EAAE;YACT,QAAQ,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACzD,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAC3B,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,KAAC,QAAQ,IAAC,EAAE,EAAC,QAAQ,EAAC,OAAO,SAAG,CAAA;IACzC,CAAC;IAED;;;;;OAKG;IACH,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,CAAC,EACP,KAAK,EAAC,yBAAyB,EAC/B,WAAW,EAAC,iEAAiE,EAC7E,MAAM,EACJ,KAAC,IAAI,IAAC,EAAE,EAAC,QAAQ,EAAC,SAAS,EAAC,yCAAyC,yCAE9D,YAGT,cAAK,SAAS,EAAC,MAAM,YACnB,KAAC,aAAa,IACZ,IAAI,EAAE,CAAC,EACP,SAAS,EAAC,MAAM,EAChB,QAAQ,EAAC,QAAQ,EACjB,MAAM,EAAE,GAAG,EAAE;wBACX,QAAQ,CACN,cAAc,CAAC,0BAA0B,EAAE,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,EACzF,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;oBACH,CAAC,GACD,GACE,GACK,CACd,CAAA;IACH,CAAC;IAED,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,CAAC,EACP,KAAK,EAAC,uBAAuB,EAC7B,WAAW,EAAC,2EAAsE,EAClF,MAAM,EACJ,KAAC,IAAI,IAAC,EAAE,EAAC,QAAQ,EAAC,SAAS,EAAC,yCAAyC,yCAE9D,YAGT,gBAAM,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAC,gBAAgB,aAChD,KAAC,SAAS,IACR,KAAK,EAAC,gBAAgB,EACtB,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,UAAU,EACpB,WAAW,EAAC,WAAW,EACvB,YAAY,EAAC,cAAc,EAC3B,QAAQ,SACR,EACF,KAAC,SAAS,IACR,KAAK,EAAC,MAAM,EACZ,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,UAAU,EACpB,IAAI,EAAC,6DAA6D,EAClE,IAAI,QACJ,QAAQ,SACR,EACF,aAAG,SAAS,EAAC,4BAA4B,2BAC5B,QAAQ,oDACjB,EACH,eAAe,CAAC,KAAK,KAAK,IAAI,IAAI,KAAC,UAAU,IAAC,KAAK,EAAE,eAAe,CAAC,KAAK,GAAI,EAC/E,KAAC,aAAa,IACZ,IAAI,EAAE,CAAC,EACP,SAAS,EAAC,MAAM,EAChB,gBAAgB,EAAC,gBAAW,EAC5B,SAAS,EAAE,eAAe,CAAC,SAAS,GACpC,IACG,GACI,CACd,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { HandbookTemplateId } from '@kelpie/schemas';
|
|
2
|
+
/**
|
|
3
|
+
* Labels and descriptions for the organisation-type step. Page lists live
|
|
4
|
+
* server-side; `later` maps to the startup (original) handbook template.
|
|
5
|
+
*/
|
|
6
|
+
export type OrganisationChoiceId = HandbookTemplateId | 'later';
|
|
7
|
+
export interface OrganisationChoice {
|
|
8
|
+
readonly id: OrganisationChoiceId;
|
|
9
|
+
readonly label: string;
|
|
10
|
+
readonly description: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const ORGANISATION_CHOICES: readonly OrganisationChoice[];
|
|
13
|
+
export declare const DEFAULT_ORGANISATION_CHOICE: OrganisationChoiceId;
|
|
14
|
+
export declare function isOrganisationChoiceId(value: string): value is OrganisationChoiceId;
|
|
15
|
+
export declare function organisationChoiceFromParam(value: string | null): OrganisationChoiceId;
|
|
16
|
+
export declare function organisationChoiceLabel(choice: OrganisationChoiceId): string;
|
|
17
|
+
/** `later` seeds the original startup pages. */
|
|
18
|
+
export declare function handbookTemplateForChoice(choice: OrganisationChoiceId): HandbookTemplateId;
|
|
19
|
+
//# sourceMappingURL=handbookTemplates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handbookTemplates.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/handbookTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD;;;GAGG;AAEH,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,GAAG,OAAO,CAAA;AAE/D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,oBAAoB,CAAA;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,kBAAkB,EAoC7D,CAAA;AAED,eAAO,MAAM,2BAA2B,EAAE,oBAAgC,CAAA;AAE1E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,oBAAoB,CAEnF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,oBAAoB,CAEtF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAQ5E;AAED,gDAAgD;AAChD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,oBAAoB,GAAG,kBAAkB,CAE1F"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export const ORGANISATION_CHOICES = [
|
|
2
|
+
{
|
|
3
|
+
id: 'startup',
|
|
4
|
+
label: 'Startup',
|
|
5
|
+
description: 'Product company, SaaS, or tech startup.',
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
id: 'agency',
|
|
9
|
+
label: 'Agency',
|
|
10
|
+
description: 'Consultancy, design shop, dev shop, or marketing agency.',
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
id: 'nonprofit',
|
|
14
|
+
label: 'Nonprofit',
|
|
15
|
+
description: 'Charity, foundation, or social enterprise.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
id: 'community',
|
|
19
|
+
label: 'Community',
|
|
20
|
+
description: 'Club, association, co-op, or membership organisation.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
id: 'professional-services',
|
|
24
|
+
label: 'Professional services',
|
|
25
|
+
description: 'Law, accounting, architecture, or advisory practice.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
id: 'creator',
|
|
29
|
+
label: 'Creator',
|
|
30
|
+
description: 'Solo creator, freelancer, or personal brand.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
id: 'later',
|
|
34
|
+
label: 'Choose later',
|
|
35
|
+
description: 'Use the standard startup handbook for now. Edit pages any time.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
export const DEFAULT_ORGANISATION_CHOICE = 'startup';
|
|
39
|
+
export function isOrganisationChoiceId(value) {
|
|
40
|
+
return ORGANISATION_CHOICES.some((option) => option.id === value);
|
|
41
|
+
}
|
|
42
|
+
export function organisationChoiceFromParam(value) {
|
|
43
|
+
return value !== null && isOrganisationChoiceId(value) ? value : DEFAULT_ORGANISATION_CHOICE;
|
|
44
|
+
}
|
|
45
|
+
export function organisationChoiceLabel(choice) {
|
|
46
|
+
for (const option of ORGANISATION_CHOICES) {
|
|
47
|
+
if (option.id === choice) {
|
|
48
|
+
return option.label;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return 'Startup';
|
|
52
|
+
}
|
|
53
|
+
/** `later` seeds the original startup pages. */
|
|
54
|
+
export function handbookTemplateForChoice(choice) {
|
|
55
|
+
return choice === 'later' ? 'startup' : choice;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=handbookTemplates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handbookTemplates.js","sourceRoot":"","sources":["../../../src/pages/onboarding/handbookTemplates.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IACjE;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,yCAAyC;KACvD;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,0DAA0D;KACxE;IACD;QACE,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,4CAA4C;KAC1D;IACD;QACE,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,uDAAuD;KACrE;IACD;QACE,EAAE,EAAE,uBAAuB;QAC3B,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,sDAAsD;KACpE;IACD;QACE,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,8CAA8C;KAC5D;IACD;QACE,EAAE,EAAE,OAAO;QACX,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,iEAAiE;KAC/E;CACF,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAyB,SAAS,CAAA;AAE1E,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,KAAK,CAAC,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAAoB;IAC9D,OAAO,KAAK,KAAK,IAAI,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAA;AAC9F,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAA4B;IAClE,KAAK,MAAM,MAAM,IAAI,oBAAoB,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,KAAK,CAAA;QACrB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,yBAAyB,CAAC,MAA4B;IACpE,OAAO,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAA;AAChD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { OrganisationChoiceId } from './handbookTemplates.ts';
|
|
2
|
+
/**
|
|
3
|
+
* The six optional modules the setup wizard offers. Other toggleable modules
|
|
4
|
+
* stay on; Admin → Modules is where they change later.
|
|
5
|
+
*
|
|
6
|
+
* Ids match the server module catalog (`deals`, `raises`, …). The wizard is
|
|
7
|
+
* what writes the first `workspace_module_settings` rows for these six.
|
|
8
|
+
*
|
|
9
|
+
* Labels stay the domain names. Defaults and explanations follow the
|
|
10
|
+
* organisation type chosen on the previous step (`onboarding.md`).
|
|
11
|
+
*/
|
|
12
|
+
export type OnboardingModuleId = 'deals' | 'opportunities' | 'raises' | 'partnerships' | 'events' | 'forms';
|
|
13
|
+
export interface OnboardingModuleChoice {
|
|
14
|
+
readonly id: OnboardingModuleId;
|
|
15
|
+
readonly label: string;
|
|
16
|
+
readonly description: string;
|
|
17
|
+
readonly defaultEnabled: boolean;
|
|
18
|
+
}
|
|
19
|
+
/** Startup catalog. Prefer `onboardingModulesForChoice` when a type is known. */
|
|
20
|
+
export declare const ONBOARDING_MODULES: readonly OnboardingModuleChoice[];
|
|
21
|
+
export declare function onboardingModulesForChoice(choice: OrganisationChoiceId): readonly OnboardingModuleChoice[];
|
|
22
|
+
export declare function defaultOnboardingModuleState(choice?: OrganisationChoiceId): Record<OnboardingModuleId, boolean>;
|
|
23
|
+
//# sourceMappingURL=onboardingModules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboardingModules.d.ts","sourceRoot":"","sources":["../../../src/pages/onboarding/onboardingModules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAElE;;;;;;;;;GASG;AAEH,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,eAAe,GACf,QAAQ,GACR,cAAc,GACd,QAAQ,GACR,OAAO,CAAA;AAEX,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,EAAE,kBAAkB,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;CACjC;AAyJD,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,EAAE,SAAS,sBAAsB,EAA+B,CAAA;AAE/F,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,oBAAoB,GAC3B,SAAS,sBAAsB,EAAE,CAEnC;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,GAAE,oBAAgC,GACvC,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAErC"}
|