@strapi/admin 5.19.0 → 5.21.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/admin/admin/src/StrapiApp.js +20 -4
- package/dist/admin/admin/src/StrapiApp.js.map +1 -1
- package/dist/admin/admin/src/StrapiApp.mjs +21 -5
- package/dist/admin/admin/src/StrapiApp.mjs.map +1 -1
- package/dist/admin/admin/src/components/Filters.js +10 -1
- package/dist/admin/admin/src/components/Filters.js.map +1 -1
- package/dist/admin/admin/src/components/Filters.mjs +10 -1
- package/dist/admin/admin/src/components/Filters.mjs.map +1 -1
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Context.js +18 -43
- package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Context.mjs +17 -42
- package/dist/admin/admin/src/components/GuidedTour/Context.mjs.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Overview.js +10 -6
- package/dist/admin/admin/src/components/GuidedTour/Overview.js.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Overview.mjs +11 -7
- package/dist/admin/admin/src/components/GuidedTour/Overview.mjs.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Step.js +6 -6
- package/dist/admin/admin/src/components/GuidedTour/Step.js.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Step.mjs +7 -7
- package/dist/admin/admin/src/components/GuidedTour/Step.mjs.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Tours.js +10 -16
- package/dist/admin/admin/src/components/GuidedTour/Tours.js.map +1 -0
- package/dist/admin/admin/src/components/{UnstableGuidedTour → GuidedTour}/Tours.mjs +11 -17
- package/dist/admin/admin/src/components/GuidedTour/Tours.mjs.map +1 -0
- package/dist/admin/admin/src/components/LeftMenu.js +1 -1
- package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
- package/dist/admin/admin/src/components/LeftMenu.mjs +1 -1
- package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
- package/dist/admin/admin/src/components/Providers.js +9 -10
- package/dist/admin/admin/src/components/Providers.js.map +1 -1
- package/dist/admin/admin/src/components/Providers.mjs +9 -10
- package/dist/admin/admin/src/components/Providers.mjs.map +1 -1
- package/dist/admin/admin/src/components/SubNav.js +1 -1
- package/dist/admin/admin/src/components/SubNav.js.map +1 -1
- package/dist/admin/admin/src/components/SubNav.mjs +1 -1
- package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
- package/dist/admin/admin/src/components/Widgets.js +185 -0
- package/dist/admin/admin/src/components/Widgets.js.map +1 -1
- package/dist/admin/admin/src/components/Widgets.mjs +186 -2
- package/dist/admin/admin/src/components/Widgets.mjs.map +1 -1
- package/dist/admin/admin/src/core/apis/Widgets.js +34 -16
- package/dist/admin/admin/src/core/apis/Widgets.js.map +1 -1
- package/dist/admin/admin/src/core/apis/Widgets.mjs +34 -16
- package/dist/admin/admin/src/core/apis/Widgets.mjs.map +1 -1
- package/dist/admin/admin/src/features/Tracking.js.map +1 -1
- package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js +1 -18
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.js.map +1 -1
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs +1 -18
- package/dist/admin/admin/src/layouts/AuthenticatedLayout.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Register.js +0 -11
- package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
- package/dist/admin/admin/src/pages/Auth/components/Register.mjs +0 -11
- package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.js +7 -4
- package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.mjs +7 -4
- package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.js +2 -2
- package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
- package/dist/admin/admin/src/pages/ProfilePage.mjs +2 -2
- package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js +6 -6
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.mjs +6 -6
- package/dist/admin/admin/src/pages/Settings/components/Tokens/TokenBox.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.js +1 -7
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.mjs +2 -8
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/EditView/EditViewPage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js +1 -8
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs +1 -8
- package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.js +0 -2
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.mjs +0 -2
- package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/EditView.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js +3 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.mjs +3 -1
- package/dist/admin/admin/src/pages/Settings/pages/Users/ListPage.mjs.map +1 -1
- package/dist/admin/admin/src/services/admin.js +1 -2
- package/dist/admin/admin/src/services/admin.js.map +1 -1
- package/dist/admin/admin/src/services/admin.mjs +1 -2
- package/dist/admin/admin/src/services/admin.mjs.map +1 -1
- package/dist/admin/admin/src/services/api.js +4 -1
- package/dist/admin/admin/src/services/api.js.map +1 -1
- package/dist/admin/admin/src/services/api.mjs +4 -1
- package/dist/admin/admin/src/services/api.mjs.map +1 -1
- package/dist/admin/admin/src/services/apiTokens.js +5 -4
- package/dist/admin/admin/src/services/apiTokens.js.map +1 -1
- package/dist/admin/admin/src/services/apiTokens.mjs +5 -4
- package/dist/admin/admin/src/services/apiTokens.mjs.map +1 -1
- package/dist/admin/admin/src/services/homepage.js +31 -0
- package/dist/admin/admin/src/services/homepage.js.map +1 -0
- package/dist/admin/admin/src/services/homepage.mjs +28 -0
- package/dist/admin/admin/src/services/homepage.mjs.map +1 -0
- package/dist/admin/admin/src/services/users.js +4 -2
- package/dist/admin/admin/src/services/users.js.map +1 -1
- package/dist/admin/admin/src/services/users.mjs +4 -2
- package/dist/admin/admin/src/services/users.mjs.map +1 -1
- package/dist/admin/admin/src/services/webhooks.js +9 -5
- package/dist/admin/admin/src/services/webhooks.js.map +1 -1
- package/dist/admin/admin/src/services/webhooks.mjs +9 -5
- package/dist/admin/admin/src/services/webhooks.mjs.map +1 -1
- package/dist/admin/admin/src/translations/en.json.js +16 -3
- package/dist/admin/admin/src/translations/en.json.js.map +1 -1
- package/dist/admin/admin/src/translations/en.json.mjs +16 -3
- package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/es.json.js +9 -0
- package/dist/admin/admin/src/translations/es.json.js.map +1 -1
- package/dist/admin/admin/src/translations/es.json.mjs +9 -0
- package/dist/admin/admin/src/translations/es.json.mjs.map +1 -1
- package/dist/admin/admin/src/translations/fr.json.js +9 -0
- package/dist/admin/admin/src/translations/fr.json.js.map +1 -1
- package/dist/admin/admin/src/translations/fr.json.mjs +9 -0
- package/dist/admin/admin/src/translations/fr.json.mjs.map +1 -1
- package/dist/admin/admin/tests/utils.js +25 -28
- package/dist/admin/admin/tests/utils.js.map +1 -1
- package/dist/admin/admin/tests/utils.mjs +25 -28
- package/dist/admin/admin/tests/utils.mjs.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.js +3 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.js.map +1 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.mjs +3 -1
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/AuditLogs/ListPage.mjs.map +1 -1
- package/dist/admin/index.js +4 -4
- package/dist/admin/index.mjs +2 -2
- package/dist/admin/src/components/Filters.d.ts +3 -1
- package/dist/admin/src/components/{UnstableGuidedTour → GuidedTour}/Context.d.ts +3 -3
- package/dist/admin/src/components/GuidedTour/Overview.d.ts +1 -0
- package/dist/admin/src/components/{UnstableGuidedTour → GuidedTour}/Step.d.ts +1 -1
- package/dist/admin/src/components/Widgets.d.ts +2 -1
- package/dist/admin/src/core/apis/Widgets.d.ts +9 -5
- package/dist/admin/src/core/store/configure.d.ts +2 -2
- package/dist/admin/src/core/store/hooks.d.ts +2 -2
- package/dist/admin/src/features/Tracking.d.ts +2 -2
- package/dist/admin/src/hooks/useAdminRoles.d.ts +1 -1
- package/dist/admin/src/index.d.ts +3 -3
- package/dist/admin/src/pages/Settings/components/Tokens/TokenBox.d.ts +1 -1
- package/dist/admin/src/pages/Settings/pages/Webhooks/hooks/useWebhooks.d.ts +4 -4
- package/dist/admin/src/selectors.d.ts +2 -2
- package/dist/admin/src/services/admin.d.ts +6 -6
- package/dist/admin/src/services/api.d.ts +1 -1
- package/dist/admin/src/services/apiTokens.d.ts +1 -1
- package/dist/admin/src/services/auth.d.ts +10 -10
- package/dist/admin/src/services/contentApi.d.ts +1 -1
- package/dist/admin/src/services/contentManager.d.ts +1 -1
- package/dist/admin/src/services/homepage.d.ts +14 -0
- package/dist/admin/src/services/transferTokens.d.ts +1 -1
- package/dist/admin/src/services/users.d.ts +8 -8
- package/dist/admin/src/services/webhooks.d.ts +2 -2
- package/dist/admin/tests/utils.d.ts +1 -1
- package/dist/ee/admin/src/services/auditLogs.d.ts +1 -1
- package/dist/ee/server/src/audit-logs/services/lifecycles.d.ts.map +1 -1
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.js +10 -9
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.js.map +1 -1
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs +10 -9
- package/dist/server/ee/server/src/audit-logs/services/lifecycles.mjs.map +1 -1
- package/dist/server/server/src/controllers/homepage.js +15 -0
- package/dist/server/server/src/controllers/homepage.js.map +1 -0
- package/dist/server/server/src/controllers/homepage.mjs +13 -0
- package/dist/server/server/src/controllers/homepage.mjs.map +1 -0
- package/dist/server/server/src/controllers/index.js +3 -1
- package/dist/server/server/src/controllers/index.js.map +1 -1
- package/dist/server/server/src/controllers/index.mjs +3 -1
- package/dist/server/server/src/controllers/index.mjs.map +1 -1
- package/dist/server/server/src/domain/user.js +3 -1
- package/dist/server/server/src/domain/user.js.map +1 -1
- package/dist/server/server/src/domain/user.mjs +3 -1
- package/dist/server/server/src/domain/user.mjs.map +1 -1
- package/dist/server/server/src/routes/homepage.js +17 -0
- package/dist/server/server/src/routes/homepage.js.map +1 -0
- package/dist/server/server/src/routes/homepage.mjs +15 -0
- package/dist/server/server/src/routes/homepage.mjs.map +1 -0
- package/dist/server/server/src/routes/index.js +3 -1
- package/dist/server/server/src/routes/index.js.map +1 -1
- package/dist/server/server/src/routes/index.mjs +3 -1
- package/dist/server/server/src/routes/index.mjs.map +1 -1
- package/dist/server/server/src/services/homepage.js +34 -0
- package/dist/server/server/src/services/homepage.js.map +1 -0
- package/dist/server/server/src/services/homepage.mjs +32 -0
- package/dist/server/server/src/services/homepage.mjs.map +1 -0
- package/dist/server/server/src/services/index.js +3 -1
- package/dist/server/server/src/services/index.js.map +1 -1
- package/dist/server/server/src/services/index.mjs +3 -1
- package/dist/server/server/src/services/index.mjs.map +1 -1
- package/dist/server/src/controllers/homepage.d.ts +15 -0
- package/dist/server/src/controllers/homepage.d.ts.map +1 -0
- package/dist/server/src/controllers/index.d.ts +13 -0
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/domain/user.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +26 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/routes/homepage.d.ts +10 -0
- package/dist/server/src/routes/homepage.d.ts.map +1 -0
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/services/homepage.d.ts +15 -0
- package/dist/server/src/services/homepage.d.ts.map +1 -0
- package/dist/server/src/services/index.d.ts +13 -0
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/shared/contracts/homepage.d.ts +30 -0
- package/dist/shared/contracts/homepage.d.ts.map +1 -1
- package/package.json +8 -9
- package/dist/admin/admin/src/components/GuidedTour/Homepage.js +0 -132
- package/dist/admin/admin/src/components/GuidedTour/Homepage.js.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Homepage.mjs +0 -130
- package/dist/admin/admin/src/components/GuidedTour/Homepage.mjs.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Modal.js +0 -278
- package/dist/admin/admin/src/components/GuidedTour/Modal.js.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Modal.mjs +0 -276
- package/dist/admin/admin/src/components/GuidedTour/Modal.mjs.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Ornaments.js +0 -54
- package/dist/admin/admin/src/components/GuidedTour/Ornaments.js.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Ornaments.mjs +0 -51
- package/dist/admin/admin/src/components/GuidedTour/Ornaments.mjs.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Provider.js +0 -206
- package/dist/admin/admin/src/components/GuidedTour/Provider.js.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/Provider.mjs +0 -184
- package/dist/admin/admin/src/components/GuidedTour/Provider.mjs.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/constants.js +0 -167
- package/dist/admin/admin/src/components/GuidedTour/constants.js.map +0 -1
- package/dist/admin/admin/src/components/GuidedTour/constants.mjs +0 -164
- package/dist/admin/admin/src/components/GuidedTour/constants.mjs.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Context.js.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Context.mjs.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Overview.js.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Overview.mjs.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Step.js.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Step.mjs.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Tours.js.map +0 -1
- package/dist/admin/admin/src/components/UnstableGuidedTour/Tours.mjs.map +0 -1
- package/dist/admin/admin/src/pages/Home/components/GuidedTour.js +0 -19
- package/dist/admin/admin/src/pages/Home/components/GuidedTour.js.map +0 -1
- package/dist/admin/admin/src/pages/Home/components/GuidedTour.mjs +0 -17
- package/dist/admin/admin/src/pages/Home/components/GuidedTour.mjs.map +0 -1
- package/dist/admin/src/components/GuidedTour/Homepage.d.ts +0 -2
- package/dist/admin/src/components/GuidedTour/Modal.d.ts +0 -2
- package/dist/admin/src/components/GuidedTour/Ornaments.d.ts +0 -13
- package/dist/admin/src/components/GuidedTour/Provider.d.ts +0 -39
- package/dist/admin/src/components/GuidedTour/constants.d.ts +0 -165
- package/dist/admin/src/components/UnstableGuidedTour/Overview.d.ts +0 -1
- package/dist/admin/src/pages/Home/components/GuidedTour.d.ts +0 -1
- /package/dist/admin/src/components/{UnstableGuidedTour → GuidedTour}/Tours.d.ts +0 -0
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
var designSystem = require('@strapi/design-system');
|
|
5
|
-
var icons = require('@strapi/icons');
|
|
6
|
-
var reactIntl = require('react-intl');
|
|
7
|
-
var reactRouterDom = require('react-router-dom');
|
|
8
|
-
var Tracking = require('../../features/Tracking.js');
|
|
9
|
-
var constants = require('./constants.js');
|
|
10
|
-
var Ornaments = require('./Ornaments.js');
|
|
11
|
-
var Provider = require('./Provider.js');
|
|
12
|
-
|
|
13
|
-
const GuidedTourHomepage = ()=>{
|
|
14
|
-
const guidedTourState = Provider.useGuidedTour('GuidedTourHomepage', (state)=>state.guidedTourState);
|
|
15
|
-
const setSkipped = Provider.useGuidedTour('GuidedTourHomepage', (state)=>state.setSkipped);
|
|
16
|
-
const { formatMessage } = reactIntl.useIntl();
|
|
17
|
-
const { trackUsage } = Tracking.useTracking();
|
|
18
|
-
const sections = Object.entries(constants.LAYOUT_DATA).map(([key, val])=>({
|
|
19
|
-
key: key,
|
|
20
|
-
title: val.home.title,
|
|
21
|
-
content: /*#__PURE__*/ jsxRuntime.jsx(designSystem.LinkButton, {
|
|
22
|
-
onClick: ()=>trackUsage(val.home.trackingEvent),
|
|
23
|
-
tag: reactRouterDom.NavLink,
|
|
24
|
-
to: val.home.cta.target,
|
|
25
|
-
endIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.ArrowRight, {}),
|
|
26
|
-
children: formatMessage(val.home.cta.title)
|
|
27
|
-
}),
|
|
28
|
-
isDone: Object.values(guidedTourState[key]).every((value)=>value === true)
|
|
29
|
-
}));
|
|
30
|
-
const activeSectionIndex = sections.findIndex((section)=>!section.isDone);
|
|
31
|
-
const handleSkip = ()=>{
|
|
32
|
-
setSkipped(true);
|
|
33
|
-
trackUsage('didSkipGuidedtour');
|
|
34
|
-
};
|
|
35
|
-
return /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Box, {
|
|
36
|
-
hasRadius: true,
|
|
37
|
-
shadow: "tableShadow",
|
|
38
|
-
paddingTop: 7,
|
|
39
|
-
paddingRight: 4,
|
|
40
|
-
paddingLeft: 7,
|
|
41
|
-
paddingBottom: 4,
|
|
42
|
-
background: "neutral0",
|
|
43
|
-
children: [
|
|
44
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
45
|
-
direction: "column",
|
|
46
|
-
alignItems: "stretch",
|
|
47
|
-
gap: 6,
|
|
48
|
-
children: [
|
|
49
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
50
|
-
variant: "beta",
|
|
51
|
-
tag: "h2",
|
|
52
|
-
children: formatMessage({
|
|
53
|
-
id: 'app.components.GuidedTour.title',
|
|
54
|
-
defaultMessage: '3 steps to get started'
|
|
55
|
-
})
|
|
56
|
-
}),
|
|
57
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
58
|
-
children: sections.map((section, index)=>{
|
|
59
|
-
const state = getState(activeSectionIndex, index);
|
|
60
|
-
return /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Box, {
|
|
61
|
-
children: [
|
|
62
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
63
|
-
children: [
|
|
64
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
65
|
-
minWidth: `3rem`,
|
|
66
|
-
marginRight: 5,
|
|
67
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(Ornaments.Number, {
|
|
68
|
-
state: state,
|
|
69
|
-
children: index + 1
|
|
70
|
-
})
|
|
71
|
-
}),
|
|
72
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
73
|
-
variant: "delta",
|
|
74
|
-
tag: "h3",
|
|
75
|
-
children: formatMessage(section.title)
|
|
76
|
-
})
|
|
77
|
-
]
|
|
78
|
-
}),
|
|
79
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
80
|
-
alignItems: "flex-start",
|
|
81
|
-
children: [
|
|
82
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
83
|
-
justifyContent: "center",
|
|
84
|
-
minWidth: `3rem`,
|
|
85
|
-
marginBottom: 3,
|
|
86
|
-
marginTop: 3,
|
|
87
|
-
marginRight: 5,
|
|
88
|
-
children: index === sections.length - 1 ? null : /*#__PURE__*/ jsxRuntime.jsx(Ornaments.VerticalDivider, {
|
|
89
|
-
state: state
|
|
90
|
-
})
|
|
91
|
-
}),
|
|
92
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
93
|
-
marginTop: 2,
|
|
94
|
-
children: state === constants.STATES.IS_ACTIVE ? section.content : null
|
|
95
|
-
})
|
|
96
|
-
]
|
|
97
|
-
})
|
|
98
|
-
]
|
|
99
|
-
}, section.key);
|
|
100
|
-
})
|
|
101
|
-
})
|
|
102
|
-
]
|
|
103
|
-
}),
|
|
104
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
105
|
-
justifyContent: "flex-end",
|
|
106
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
|
|
107
|
-
variant: "tertiary",
|
|
108
|
-
onClick: handleSkip,
|
|
109
|
-
children: formatMessage({
|
|
110
|
-
id: 'app.components.GuidedTour.skip',
|
|
111
|
-
defaultMessage: 'Skip the tour'
|
|
112
|
-
})
|
|
113
|
-
})
|
|
114
|
-
})
|
|
115
|
-
]
|
|
116
|
-
});
|
|
117
|
-
};
|
|
118
|
-
const getState = (activeSectionIndex, index)=>{
|
|
119
|
-
if (activeSectionIndex === -1) {
|
|
120
|
-
return constants.STATES.IS_DONE;
|
|
121
|
-
}
|
|
122
|
-
if (index < activeSectionIndex) {
|
|
123
|
-
return constants.STATES.IS_DONE;
|
|
124
|
-
}
|
|
125
|
-
if (index > activeSectionIndex) {
|
|
126
|
-
return constants.STATES.IS_NOT_DONE;
|
|
127
|
-
}
|
|
128
|
-
return constants.STATES.IS_ACTIVE;
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
exports.GuidedTourHomepage = GuidedTourHomepage;
|
|
132
|
-
//# sourceMappingURL=Homepage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Homepage.js","sources":["../../../../../../admin/src/components/GuidedTour/Homepage.tsx"],"sourcesContent":["import { Box, Button, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { ArrowRight } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useTracking } from '../../features/Tracking';\n\nimport { LAYOUT_DATA, States, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\nimport { GuidedTourContextValue, useGuidedTour } from './Provider';\n\ntype SectionName = keyof GuidedTourContextValue['guidedTourState'];\n\nconst GuidedTourHomepage = () => {\n const guidedTourState = useGuidedTour('GuidedTourHomepage', (state) => state.guidedTourState);\n const setSkipped = useGuidedTour('GuidedTourHomepage', (state) => state.setSkipped);\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const sections = Object.entries(LAYOUT_DATA).map(([key, val]) => ({\n key: key,\n title: val.home.title,\n content: (\n <LinkButton\n onClick={() => trackUsage(val.home.trackingEvent)}\n tag={NavLink}\n to={val.home.cta.target}\n endIcon={<ArrowRight />}\n >\n {formatMessage(val.home.cta.title)}\n </LinkButton>\n ),\n isDone: Object.values(guidedTourState[key as SectionName]).every((value) => value === true),\n }));\n\n const activeSectionIndex = sections.findIndex((section) => !section.isDone);\n\n const handleSkip = () => {\n setSkipped(true);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Box\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={7}\n paddingRight={4}\n paddingLeft={7}\n paddingBottom={4}\n background=\"neutral0\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Typography variant=\"beta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n <Box>\n {sections.map((section, index) => {\n const state = getState(activeSectionIndex, index);\n\n return (\n <Box key={section.key}>\n <Flex>\n <Box minWidth={`3rem`} marginRight={5}>\n <Number state={state}>{index + 1}</Number>\n </Box>\n <Typography variant=\"delta\" tag=\"h3\">\n {formatMessage(section.title)}\n </Typography>\n </Flex>\n <Flex alignItems=\"flex-start\">\n <Flex\n justifyContent=\"center\"\n minWidth={`3rem`}\n marginBottom={3}\n marginTop={3}\n marginRight={5}\n >\n {index === sections.length - 1 ? null : <VerticalDivider state={state} />}\n </Flex>\n <Box marginTop={2}>{state === STATES.IS_ACTIVE ? section.content : null}</Box>\n </Flex>\n </Box>\n );\n })}\n </Box>\n </Flex>\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nconst getState = (activeSectionIndex: number, index: number): States => {\n if (activeSectionIndex === -1) {\n return STATES.IS_DONE;\n }\n if (index < activeSectionIndex) {\n return STATES.IS_DONE;\n }\n if (index > activeSectionIndex) {\n return STATES.IS_NOT_DONE;\n }\n return STATES.IS_ACTIVE;\n};\n\nexport { GuidedTourHomepage };\n"],"names":["GuidedTourHomepage","guidedTourState","useGuidedTour","state","setSkipped","formatMessage","useIntl","trackUsage","useTracking","sections","Object","entries","LAYOUT_DATA","map","key","val","title","home","content","_jsx","LinkButton","onClick","trackingEvent","tag","NavLink","to","cta","target","endIcon","ArrowRight","isDone","values","every","value","activeSectionIndex","findIndex","section","handleSkip","_jsxs","Box","hasRadius","shadow","paddingTop","paddingRight","paddingLeft","paddingBottom","background","Flex","direction","alignItems","gap","Typography","variant","id","defaultMessage","index","getState","minWidth","marginRight","Number","justifyContent","marginBottom","marginTop","length","VerticalDivider","STATES","IS_ACTIVE","Button","IS_DONE","IS_NOT_DONE"],"mappings":"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"}
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { LinkButton, Box, Flex, Typography, Button } from '@strapi/design-system';
|
|
3
|
-
import { ArrowRight } from '@strapi/icons';
|
|
4
|
-
import { useIntl } from 'react-intl';
|
|
5
|
-
import { NavLink } from 'react-router-dom';
|
|
6
|
-
import { useTracking } from '../../features/Tracking.mjs';
|
|
7
|
-
import { LAYOUT_DATA, STATES } from './constants.mjs';
|
|
8
|
-
import { Number, VerticalDivider } from './Ornaments.mjs';
|
|
9
|
-
import { useGuidedTour } from './Provider.mjs';
|
|
10
|
-
|
|
11
|
-
const GuidedTourHomepage = ()=>{
|
|
12
|
-
const guidedTourState = useGuidedTour('GuidedTourHomepage', (state)=>state.guidedTourState);
|
|
13
|
-
const setSkipped = useGuidedTour('GuidedTourHomepage', (state)=>state.setSkipped);
|
|
14
|
-
const { formatMessage } = useIntl();
|
|
15
|
-
const { trackUsage } = useTracking();
|
|
16
|
-
const sections = Object.entries(LAYOUT_DATA).map(([key, val])=>({
|
|
17
|
-
key: key,
|
|
18
|
-
title: val.home.title,
|
|
19
|
-
content: /*#__PURE__*/ jsx(LinkButton, {
|
|
20
|
-
onClick: ()=>trackUsage(val.home.trackingEvent),
|
|
21
|
-
tag: NavLink,
|
|
22
|
-
to: val.home.cta.target,
|
|
23
|
-
endIcon: /*#__PURE__*/ jsx(ArrowRight, {}),
|
|
24
|
-
children: formatMessage(val.home.cta.title)
|
|
25
|
-
}),
|
|
26
|
-
isDone: Object.values(guidedTourState[key]).every((value)=>value === true)
|
|
27
|
-
}));
|
|
28
|
-
const activeSectionIndex = sections.findIndex((section)=>!section.isDone);
|
|
29
|
-
const handleSkip = ()=>{
|
|
30
|
-
setSkipped(true);
|
|
31
|
-
trackUsage('didSkipGuidedtour');
|
|
32
|
-
};
|
|
33
|
-
return /*#__PURE__*/ jsxs(Box, {
|
|
34
|
-
hasRadius: true,
|
|
35
|
-
shadow: "tableShadow",
|
|
36
|
-
paddingTop: 7,
|
|
37
|
-
paddingRight: 4,
|
|
38
|
-
paddingLeft: 7,
|
|
39
|
-
paddingBottom: 4,
|
|
40
|
-
background: "neutral0",
|
|
41
|
-
children: [
|
|
42
|
-
/*#__PURE__*/ jsxs(Flex, {
|
|
43
|
-
direction: "column",
|
|
44
|
-
alignItems: "stretch",
|
|
45
|
-
gap: 6,
|
|
46
|
-
children: [
|
|
47
|
-
/*#__PURE__*/ jsx(Typography, {
|
|
48
|
-
variant: "beta",
|
|
49
|
-
tag: "h2",
|
|
50
|
-
children: formatMessage({
|
|
51
|
-
id: 'app.components.GuidedTour.title',
|
|
52
|
-
defaultMessage: '3 steps to get started'
|
|
53
|
-
})
|
|
54
|
-
}),
|
|
55
|
-
/*#__PURE__*/ jsx(Box, {
|
|
56
|
-
children: sections.map((section, index)=>{
|
|
57
|
-
const state = getState(activeSectionIndex, index);
|
|
58
|
-
return /*#__PURE__*/ jsxs(Box, {
|
|
59
|
-
children: [
|
|
60
|
-
/*#__PURE__*/ jsxs(Flex, {
|
|
61
|
-
children: [
|
|
62
|
-
/*#__PURE__*/ jsx(Box, {
|
|
63
|
-
minWidth: `3rem`,
|
|
64
|
-
marginRight: 5,
|
|
65
|
-
children: /*#__PURE__*/ jsx(Number, {
|
|
66
|
-
state: state,
|
|
67
|
-
children: index + 1
|
|
68
|
-
})
|
|
69
|
-
}),
|
|
70
|
-
/*#__PURE__*/ jsx(Typography, {
|
|
71
|
-
variant: "delta",
|
|
72
|
-
tag: "h3",
|
|
73
|
-
children: formatMessage(section.title)
|
|
74
|
-
})
|
|
75
|
-
]
|
|
76
|
-
}),
|
|
77
|
-
/*#__PURE__*/ jsxs(Flex, {
|
|
78
|
-
alignItems: "flex-start",
|
|
79
|
-
children: [
|
|
80
|
-
/*#__PURE__*/ jsx(Flex, {
|
|
81
|
-
justifyContent: "center",
|
|
82
|
-
minWidth: `3rem`,
|
|
83
|
-
marginBottom: 3,
|
|
84
|
-
marginTop: 3,
|
|
85
|
-
marginRight: 5,
|
|
86
|
-
children: index === sections.length - 1 ? null : /*#__PURE__*/ jsx(VerticalDivider, {
|
|
87
|
-
state: state
|
|
88
|
-
})
|
|
89
|
-
}),
|
|
90
|
-
/*#__PURE__*/ jsx(Box, {
|
|
91
|
-
marginTop: 2,
|
|
92
|
-
children: state === STATES.IS_ACTIVE ? section.content : null
|
|
93
|
-
})
|
|
94
|
-
]
|
|
95
|
-
})
|
|
96
|
-
]
|
|
97
|
-
}, section.key);
|
|
98
|
-
})
|
|
99
|
-
})
|
|
100
|
-
]
|
|
101
|
-
}),
|
|
102
|
-
/*#__PURE__*/ jsx(Flex, {
|
|
103
|
-
justifyContent: "flex-end",
|
|
104
|
-
children: /*#__PURE__*/ jsx(Button, {
|
|
105
|
-
variant: "tertiary",
|
|
106
|
-
onClick: handleSkip,
|
|
107
|
-
children: formatMessage({
|
|
108
|
-
id: 'app.components.GuidedTour.skip',
|
|
109
|
-
defaultMessage: 'Skip the tour'
|
|
110
|
-
})
|
|
111
|
-
})
|
|
112
|
-
})
|
|
113
|
-
]
|
|
114
|
-
});
|
|
115
|
-
};
|
|
116
|
-
const getState = (activeSectionIndex, index)=>{
|
|
117
|
-
if (activeSectionIndex === -1) {
|
|
118
|
-
return STATES.IS_DONE;
|
|
119
|
-
}
|
|
120
|
-
if (index < activeSectionIndex) {
|
|
121
|
-
return STATES.IS_DONE;
|
|
122
|
-
}
|
|
123
|
-
if (index > activeSectionIndex) {
|
|
124
|
-
return STATES.IS_NOT_DONE;
|
|
125
|
-
}
|
|
126
|
-
return STATES.IS_ACTIVE;
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
export { GuidedTourHomepage };
|
|
130
|
-
//# sourceMappingURL=Homepage.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Homepage.mjs","sources":["../../../../../../admin/src/components/GuidedTour/Homepage.tsx"],"sourcesContent":["import { Box, Button, Flex, Typography, LinkButton } from '@strapi/design-system';\nimport { ArrowRight } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { useTracking } from '../../features/Tracking';\n\nimport { LAYOUT_DATA, States, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\nimport { GuidedTourContextValue, useGuidedTour } from './Provider';\n\ntype SectionName = keyof GuidedTourContextValue['guidedTourState'];\n\nconst GuidedTourHomepage = () => {\n const guidedTourState = useGuidedTour('GuidedTourHomepage', (state) => state.guidedTourState);\n const setSkipped = useGuidedTour('GuidedTourHomepage', (state) => state.setSkipped);\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const sections = Object.entries(LAYOUT_DATA).map(([key, val]) => ({\n key: key,\n title: val.home.title,\n content: (\n <LinkButton\n onClick={() => trackUsage(val.home.trackingEvent)}\n tag={NavLink}\n to={val.home.cta.target}\n endIcon={<ArrowRight />}\n >\n {formatMessage(val.home.cta.title)}\n </LinkButton>\n ),\n isDone: Object.values(guidedTourState[key as SectionName]).every((value) => value === true),\n }));\n\n const activeSectionIndex = sections.findIndex((section) => !section.isDone);\n\n const handleSkip = () => {\n setSkipped(true);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Box\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={7}\n paddingRight={4}\n paddingLeft={7}\n paddingBottom={4}\n background=\"neutral0\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Typography variant=\"beta\" tag=\"h2\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n <Box>\n {sections.map((section, index) => {\n const state = getState(activeSectionIndex, index);\n\n return (\n <Box key={section.key}>\n <Flex>\n <Box minWidth={`3rem`} marginRight={5}>\n <Number state={state}>{index + 1}</Number>\n </Box>\n <Typography variant=\"delta\" tag=\"h3\">\n {formatMessage(section.title)}\n </Typography>\n </Flex>\n <Flex alignItems=\"flex-start\">\n <Flex\n justifyContent=\"center\"\n minWidth={`3rem`}\n marginBottom={3}\n marginTop={3}\n marginRight={5}\n >\n {index === sections.length - 1 ? null : <VerticalDivider state={state} />}\n </Flex>\n <Box marginTop={2}>{state === STATES.IS_ACTIVE ? section.content : null}</Box>\n </Flex>\n </Box>\n );\n })}\n </Box>\n </Flex>\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nconst getState = (activeSectionIndex: number, index: number): States => {\n if (activeSectionIndex === -1) {\n return STATES.IS_DONE;\n }\n if (index < activeSectionIndex) {\n return STATES.IS_DONE;\n }\n if (index > activeSectionIndex) {\n return STATES.IS_NOT_DONE;\n }\n return STATES.IS_ACTIVE;\n};\n\nexport { GuidedTourHomepage };\n"],"names":["GuidedTourHomepage","guidedTourState","useGuidedTour","state","setSkipped","formatMessage","useIntl","trackUsage","useTracking","sections","Object","entries","LAYOUT_DATA","map","key","val","title","home","content","_jsx","LinkButton","onClick","trackingEvent","tag","NavLink","to","cta","target","endIcon","ArrowRight","isDone","values","every","value","activeSectionIndex","findIndex","section","handleSkip","_jsxs","Box","hasRadius","shadow","paddingTop","paddingRight","paddingLeft","paddingBottom","background","Flex","direction","alignItems","gap","Typography","variant","id","defaultMessage","index","getState","minWidth","marginRight","Number","justifyContent","marginBottom","marginTop","length","VerticalDivider","STATES","IS_ACTIVE","Button","IS_DONE","IS_NOT_DONE"],"mappings":"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"}
|
|
@@ -1,278 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
require('react');
|
|
5
|
-
var designSystem = require('@strapi/design-system');
|
|
6
|
-
var icons = require('@strapi/icons');
|
|
7
|
-
var get = require('lodash/get');
|
|
8
|
-
var reactIntl = require('react-intl');
|
|
9
|
-
var reactRouterDom = require('react-router-dom');
|
|
10
|
-
var styled = require('styled-components');
|
|
11
|
-
var Tracking = require('../../features/Tracking.js');
|
|
12
|
-
var constants = require('./constants.js');
|
|
13
|
-
var Ornaments = require('./Ornaments.js');
|
|
14
|
-
var Provider = require('./Provider.js');
|
|
15
|
-
|
|
16
|
-
/* -------------------------------------------------------------------------------------------------
|
|
17
|
-
* GuidedTourModal
|
|
18
|
-
* -----------------------------------------------------------------------------------------------*/ const GuidedTourModal = ()=>{
|
|
19
|
-
const guidedTour = Provider.useGuidedTour('GuidedTourModal', (state)=>state);
|
|
20
|
-
const { currentStep, guidedTourState, setCurrentStep, setStepState, isGuidedTourVisible, setSkipped } = guidedTour;
|
|
21
|
-
const { formatMessage } = reactIntl.useIntl();
|
|
22
|
-
const { trackUsage } = Tracking.useTracking();
|
|
23
|
-
if (!currentStep || !isGuidedTourVisible) {
|
|
24
|
-
return null;
|
|
25
|
-
}
|
|
26
|
-
const stepData = get(constants.LAYOUT_DATA, currentStep);
|
|
27
|
-
const sectionKeys = Object.keys(guidedTourState);
|
|
28
|
-
const [sectionName, stepName] = currentStep.split('.');
|
|
29
|
-
const sectionIndex = sectionKeys.indexOf(sectionName);
|
|
30
|
-
const stepIndex = Object.keys(guidedTourState[sectionName]).indexOf(stepName);
|
|
31
|
-
const hasSectionAfter = sectionIndex < sectionKeys.length - 1;
|
|
32
|
-
const hasStepAfter = stepIndex < Object.keys(guidedTourState[sectionName]).length - 1;
|
|
33
|
-
const handleCtaClick = ()=>{
|
|
34
|
-
setStepState(currentStep, true);
|
|
35
|
-
if (stepData) {
|
|
36
|
-
trackUsage(stepData.trackingEvent);
|
|
37
|
-
}
|
|
38
|
-
setCurrentStep(null);
|
|
39
|
-
};
|
|
40
|
-
const handleSkip = ()=>{
|
|
41
|
-
setSkipped(true);
|
|
42
|
-
setCurrentStep(null);
|
|
43
|
-
trackUsage('didSkipGuidedtour');
|
|
44
|
-
};
|
|
45
|
-
return /*#__PURE__*/ jsxRuntime.jsx(designSystem.Portal, {
|
|
46
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(ModalWrapper, {
|
|
47
|
-
onClick: handleCtaClick,
|
|
48
|
-
padding: 8,
|
|
49
|
-
justifyContent: "center",
|
|
50
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.FocusTrap, {
|
|
51
|
-
onEscape: handleCtaClick,
|
|
52
|
-
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
53
|
-
direction: "column",
|
|
54
|
-
alignItems: "stretch",
|
|
55
|
-
background: "neutral0",
|
|
56
|
-
width: `66rem`,
|
|
57
|
-
shadow: "popupShadow",
|
|
58
|
-
hasRadius: true,
|
|
59
|
-
padding: 4,
|
|
60
|
-
gap: 8,
|
|
61
|
-
role: "dialog",
|
|
62
|
-
"aria-modal": true,
|
|
63
|
-
onClick: (e)=>e.stopPropagation(),
|
|
64
|
-
children: [
|
|
65
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
66
|
-
justifyContent: "flex-end",
|
|
67
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.IconButton, {
|
|
68
|
-
onClick: handleCtaClick,
|
|
69
|
-
withTooltip: false,
|
|
70
|
-
label: formatMessage({
|
|
71
|
-
id: 'app.utils.close-label',
|
|
72
|
-
defaultMessage: 'Close'
|
|
73
|
-
}),
|
|
74
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(icons.Cross, {})
|
|
75
|
-
})
|
|
76
|
-
}),
|
|
77
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
78
|
-
paddingLeft: 7,
|
|
79
|
-
paddingRight: 7,
|
|
80
|
-
paddingBottom: !hasStepAfter && !hasSectionAfter ? 8 : 0,
|
|
81
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(GuidedTourStepper, {
|
|
82
|
-
title: stepData && 'title' in stepData ? stepData.title : undefined,
|
|
83
|
-
cta: stepData && 'cta' in stepData ? stepData.cta : undefined,
|
|
84
|
-
onCtaClick: handleCtaClick,
|
|
85
|
-
sectionIndex: sectionIndex,
|
|
86
|
-
stepIndex: stepIndex,
|
|
87
|
-
hasSectionAfter: hasSectionAfter,
|
|
88
|
-
children: stepData && 'content' in stepData && /*#__PURE__*/ jsxRuntime.jsx(GuidedTourContent, {
|
|
89
|
-
...stepData.content
|
|
90
|
-
})
|
|
91
|
-
})
|
|
92
|
-
}),
|
|
93
|
-
!(!hasStepAfter && !hasSectionAfter) && /*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
94
|
-
justifyContent: "flex-end",
|
|
95
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
|
|
96
|
-
variant: "tertiary",
|
|
97
|
-
onClick: handleSkip,
|
|
98
|
-
children: formatMessage({
|
|
99
|
-
id: 'app.components.GuidedTour.skip',
|
|
100
|
-
defaultMessage: 'Skip the tour'
|
|
101
|
-
})
|
|
102
|
-
})
|
|
103
|
-
})
|
|
104
|
-
]
|
|
105
|
-
})
|
|
106
|
-
})
|
|
107
|
-
})
|
|
108
|
-
});
|
|
109
|
-
};
|
|
110
|
-
const ModalWrapper = styled.styled(designSystem.Flex)`
|
|
111
|
-
position: fixed;
|
|
112
|
-
z-index: 4;
|
|
113
|
-
inset: 0;
|
|
114
|
-
/* this is theme.colors.neutral800 with opacity */
|
|
115
|
-
background: ${({ theme })=>`${theme.colors.neutral800}1F`};
|
|
116
|
-
`;
|
|
117
|
-
const GuidedTourStepper = ({ title, children, cta, onCtaClick, sectionIndex, stepIndex, hasSectionAfter })=>{
|
|
118
|
-
const { formatMessage } = reactIntl.useIntl();
|
|
119
|
-
const hasSectionBefore = sectionIndex > 0;
|
|
120
|
-
const hasStepsBefore = stepIndex > 0;
|
|
121
|
-
const nextSectionIndex = sectionIndex + 1;
|
|
122
|
-
return /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
123
|
-
children: [
|
|
124
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
125
|
-
alignItems: "stretch",
|
|
126
|
-
children: [
|
|
127
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
128
|
-
marginRight: 8,
|
|
129
|
-
justifyContent: "center",
|
|
130
|
-
minWidth: `3rem`,
|
|
131
|
-
children: hasSectionBefore && /*#__PURE__*/ jsxRuntime.jsx(Ornaments.VerticalDivider, {
|
|
132
|
-
state: constants.STATES.IS_DONE,
|
|
133
|
-
minHeight: `2.4rem`
|
|
134
|
-
})
|
|
135
|
-
}),
|
|
136
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
137
|
-
variant: "sigma",
|
|
138
|
-
textColor: "primary600",
|
|
139
|
-
children: formatMessage({
|
|
140
|
-
id: 'app.components.GuidedTour.title',
|
|
141
|
-
defaultMessage: '3 steps to get started'
|
|
142
|
-
})
|
|
143
|
-
})
|
|
144
|
-
]
|
|
145
|
-
}),
|
|
146
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
147
|
-
children: [
|
|
148
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
149
|
-
marginRight: 8,
|
|
150
|
-
minWidth: `3rem`,
|
|
151
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(Ornaments.Number, {
|
|
152
|
-
state: hasStepsBefore ? constants.STATES.IS_DONE : constants.STATES.IS_ACTIVE,
|
|
153
|
-
paddingTop: 3,
|
|
154
|
-
paddingBottom: 3,
|
|
155
|
-
children: sectionIndex + 1
|
|
156
|
-
})
|
|
157
|
-
}),
|
|
158
|
-
title && /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
159
|
-
variant: "alpha",
|
|
160
|
-
fontWeight: "bold",
|
|
161
|
-
textColor: "neutral800",
|
|
162
|
-
tag: "h3",
|
|
163
|
-
id: "title",
|
|
164
|
-
children: formatMessage(title)
|
|
165
|
-
})
|
|
166
|
-
]
|
|
167
|
-
}),
|
|
168
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
169
|
-
alignItems: "stretch",
|
|
170
|
-
children: [
|
|
171
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
172
|
-
marginRight: 8,
|
|
173
|
-
direction: "column",
|
|
174
|
-
justifyContent: "center",
|
|
175
|
-
minWidth: `3rem`,
|
|
176
|
-
children: hasSectionAfter && /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
177
|
-
children: [
|
|
178
|
-
/*#__PURE__*/ jsxRuntime.jsx(Ornaments.VerticalDivider, {
|
|
179
|
-
state: constants.STATES.IS_DONE
|
|
180
|
-
}),
|
|
181
|
-
hasStepsBefore && /*#__PURE__*/ jsxRuntime.jsx(Ornaments.Number, {
|
|
182
|
-
state: constants.STATES.IS_ACTIVE,
|
|
183
|
-
paddingTop: 3,
|
|
184
|
-
children: nextSectionIndex + 1
|
|
185
|
-
})
|
|
186
|
-
]
|
|
187
|
-
})
|
|
188
|
-
}),
|
|
189
|
-
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Box, {
|
|
190
|
-
children: [
|
|
191
|
-
children,
|
|
192
|
-
cta && (cta.target ? /*#__PURE__*/ jsxRuntime.jsx(designSystem.LinkButton, {
|
|
193
|
-
tag: reactRouterDom.NavLink,
|
|
194
|
-
endIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.ArrowRight, {}),
|
|
195
|
-
onClick: onCtaClick,
|
|
196
|
-
to: cta.target,
|
|
197
|
-
children: formatMessage(cta.title)
|
|
198
|
-
}) : /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
|
|
199
|
-
endIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.ArrowRight, {}),
|
|
200
|
-
onClick: onCtaClick,
|
|
201
|
-
children: formatMessage(cta.title)
|
|
202
|
-
}))
|
|
203
|
-
]
|
|
204
|
-
})
|
|
205
|
-
]
|
|
206
|
-
}),
|
|
207
|
-
hasStepsBefore && hasSectionAfter && /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
208
|
-
paddingTop: 3,
|
|
209
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
210
|
-
marginRight: 8,
|
|
211
|
-
justifyContent: "center",
|
|
212
|
-
width: `3rem`,
|
|
213
|
-
children: /*#__PURE__*/ jsxRuntime.jsx(Ornaments.VerticalDivider, {
|
|
214
|
-
state: constants.STATES.IS_DONE,
|
|
215
|
-
minHeight: `2.4rem`
|
|
216
|
-
})
|
|
217
|
-
})
|
|
218
|
-
})
|
|
219
|
-
]
|
|
220
|
-
});
|
|
221
|
-
};
|
|
222
|
-
const GuidedTourContent = ({ id, defaultMessage })=>{
|
|
223
|
-
const { formatMessage } = reactIntl.useIntl();
|
|
224
|
-
return /*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
225
|
-
direction: "column",
|
|
226
|
-
alignItems: "stretch",
|
|
227
|
-
gap: 4,
|
|
228
|
-
paddingBottom: 6,
|
|
229
|
-
children: formatMessage({
|
|
230
|
-
id,
|
|
231
|
-
defaultMessage
|
|
232
|
-
}, {
|
|
233
|
-
documentationLink: DocumentationLink,
|
|
234
|
-
b: Bold,
|
|
235
|
-
p: Paragraph,
|
|
236
|
-
light: Light,
|
|
237
|
-
ul: List,
|
|
238
|
-
li: ListItem
|
|
239
|
-
})
|
|
240
|
-
});
|
|
241
|
-
};
|
|
242
|
-
const DocumentationLink = (children)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
243
|
-
tag: "a",
|
|
244
|
-
textColor: "primary600",
|
|
245
|
-
target: "_blank",
|
|
246
|
-
rel: "noopener noreferrer",
|
|
247
|
-
href: "https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters",
|
|
248
|
-
children: children
|
|
249
|
-
});
|
|
250
|
-
const Bold = (children)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
251
|
-
fontWeight: "semiBold",
|
|
252
|
-
children: children
|
|
253
|
-
});
|
|
254
|
-
const Paragraph = (children)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
255
|
-
children: children
|
|
256
|
-
});
|
|
257
|
-
const Light = (children)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
258
|
-
textColor: "neutral600",
|
|
259
|
-
children: children
|
|
260
|
-
});
|
|
261
|
-
const List = (children)=>/*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
262
|
-
paddingLeft: 6,
|
|
263
|
-
children: /*#__PURE__*/ jsxRuntime.jsx("ul", {
|
|
264
|
-
children: children
|
|
265
|
-
})
|
|
266
|
-
});
|
|
267
|
-
const LiStyled = styled.styled.li`
|
|
268
|
-
list-style: disc;
|
|
269
|
-
&::marker {
|
|
270
|
-
color: ${({ theme })=>theme.colors.neutral800};
|
|
271
|
-
}
|
|
272
|
-
`;
|
|
273
|
-
const ListItem = (children)=>/*#__PURE__*/ jsxRuntime.jsx(LiStyled, {
|
|
274
|
-
children: children
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
exports.GuidedTourModal = GuidedTourModal;
|
|
278
|
-
//# sourceMappingURL=Modal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../../../../../../admin/src/components/GuidedTour/Modal.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n FlexComponent,\n FocusTrap,\n IconButton,\n Portal,\n Typography,\n LinkButton,\n} from '@strapi/design-system';\nimport { ArrowRight, Cross } from '@strapi/icons';\nimport get from 'lodash/get';\nimport { MessageDescriptor, useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { useTracking } from '../../features/Tracking';\n\nimport { LAYOUT_DATA, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\nimport { GuidedTourContextValue, useGuidedTour } from './Provider';\n\n/* -------------------------------------------------------------------------------------------------\n * GuidedTourModal\n * -----------------------------------------------------------------------------------------------*/\n\nconst GuidedTourModal = () => {\n const guidedTour = useGuidedTour('GuidedTourModal', (state) => state);\n\n const {\n currentStep,\n guidedTourState,\n setCurrentStep,\n setStepState,\n isGuidedTourVisible,\n setSkipped,\n } = guidedTour;\n\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n if (!currentStep || !isGuidedTourVisible) {\n return null;\n }\n\n const stepData = get(LAYOUT_DATA, currentStep);\n const sectionKeys = Object.keys(guidedTourState);\n const [sectionName, stepName] = currentStep.split('.') as [\n keyof GuidedTourContextValue['guidedTourState'],\n string,\n ];\n const sectionIndex = sectionKeys.indexOf(sectionName);\n const stepIndex = Object.keys(guidedTourState[sectionName]).indexOf(stepName);\n const hasSectionAfter = sectionIndex < sectionKeys.length - 1;\n const hasStepAfter = stepIndex < Object.keys(guidedTourState[sectionName]).length - 1;\n\n const handleCtaClick = () => {\n setStepState(currentStep, true);\n\n if (stepData) {\n trackUsage(stepData.trackingEvent);\n }\n\n setCurrentStep(null);\n };\n\n const handleSkip = () => {\n setSkipped(true);\n setCurrentStep(null);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Portal>\n <ModalWrapper onClick={handleCtaClick} padding={8} justifyContent=\"center\">\n <FocusTrap onEscape={handleCtaClick}>\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n background=\"neutral0\"\n width={`66rem`}\n shadow=\"popupShadow\"\n hasRadius\n padding={4}\n gap={8}\n role=\"dialog\"\n aria-modal\n onClick={(e) => e.stopPropagation()}\n >\n <Flex justifyContent=\"flex-end\">\n <IconButton\n onClick={handleCtaClick}\n withTooltip={false}\n label={formatMessage({\n id: 'app.utils.close-label',\n defaultMessage: 'Close',\n })}\n >\n <Cross />\n </IconButton>\n </Flex>\n <Box\n paddingLeft={7}\n paddingRight={7}\n paddingBottom={!hasStepAfter && !hasSectionAfter ? 8 : 0}\n >\n <GuidedTourStepper\n title={stepData && 'title' in stepData ? stepData.title : undefined}\n cta={stepData && 'cta' in stepData ? stepData.cta : undefined}\n onCtaClick={handleCtaClick}\n sectionIndex={sectionIndex}\n stepIndex={stepIndex}\n hasSectionAfter={hasSectionAfter}\n >\n {stepData && 'content' in stepData && <GuidedTourContent {...stepData.content} />}\n </GuidedTourStepper>\n </Box>\n {!(!hasStepAfter && !hasSectionAfter) && (\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({\n id: 'app.components.GuidedTour.skip',\n defaultMessage: 'Skip the tour',\n })}\n </Button>\n </Flex>\n )}\n </Flex>\n </FocusTrap>\n </ModalWrapper>\n </Portal>\n );\n};\n\nconst ModalWrapper = styled<FlexComponent>(Flex)`\n position: fixed;\n z-index: 4;\n inset: 0;\n /* this is theme.colors.neutral800 with opacity */\n background: ${({ theme }) => `${theme.colors.neutral800}1F`};\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * GuidedTourStepper\n * -----------------------------------------------------------------------------------------------*/\n\ninterface GuidedTourStepperProps {\n title: MessageDescriptor | undefined;\n children: React.ReactNode;\n cta?: {\n title: MessageDescriptor;\n target?: string;\n };\n onCtaClick: () => void;\n sectionIndex: number;\n stepIndex: number;\n hasSectionAfter: boolean;\n}\n\nconst GuidedTourStepper = ({\n title,\n children,\n cta,\n onCtaClick,\n sectionIndex,\n stepIndex,\n hasSectionAfter,\n}: GuidedTourStepperProps) => {\n const { formatMessage } = useIntl();\n\n const hasSectionBefore = sectionIndex > 0;\n const hasStepsBefore = stepIndex > 0;\n const nextSectionIndex = sectionIndex + 1;\n\n return (\n <>\n <Flex alignItems=\"stretch\">\n <Flex marginRight={8} justifyContent=\"center\" minWidth={`3rem`}>\n {hasSectionBefore && <VerticalDivider state={STATES.IS_DONE} minHeight={`2.4rem`} />}\n </Flex>\n <Typography variant=\"sigma\" textColor=\"primary600\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n </Flex>\n <Flex>\n <Flex marginRight={8} minWidth={`3rem`}>\n <Number\n state={hasStepsBefore ? STATES.IS_DONE : STATES.IS_ACTIVE}\n paddingTop={3}\n paddingBottom={3}\n >\n {sectionIndex + 1}\n </Number>\n </Flex>\n {title && (\n <Typography variant=\"alpha\" fontWeight=\"bold\" textColor=\"neutral800\" tag=\"h3\" id=\"title\">\n {formatMessage(title)}\n </Typography>\n )}\n </Flex>\n <Flex alignItems=\"stretch\">\n <Flex marginRight={8} direction=\"column\" justifyContent=\"center\" minWidth={`3rem`}>\n {hasSectionAfter && (\n <>\n <VerticalDivider state={STATES.IS_DONE} />\n {hasStepsBefore && (\n <Number state={STATES.IS_ACTIVE} paddingTop={3}>\n {nextSectionIndex + 1}\n </Number>\n )}\n </>\n )}\n </Flex>\n <Box>\n {children}\n {cta &&\n (cta.target ? (\n <LinkButton\n tag={NavLink}\n endIcon={<ArrowRight />}\n onClick={onCtaClick}\n to={cta.target}\n >\n {formatMessage(cta.title)}\n </LinkButton>\n ) : (\n <Button endIcon={<ArrowRight />} onClick={onCtaClick}>\n {formatMessage(cta.title)}\n </Button>\n ))}\n </Box>\n </Flex>\n {hasStepsBefore && hasSectionAfter && (\n <Box paddingTop={3}>\n <Flex marginRight={8} justifyContent=\"center\" width={`3rem`}>\n <VerticalDivider state={STATES.IS_DONE} minHeight={`2.4rem`} />\n </Flex>\n </Box>\n )}\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * GuidedTourContent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface GuidedTourContentProps\n extends Required<Pick<MessageDescriptor, 'defaultMessage' | 'id'>> {}\n\nconst GuidedTourContent = ({ id, defaultMessage }: GuidedTourContentProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4} paddingBottom={6}>\n {formatMessage(\n { id, defaultMessage },\n {\n documentationLink: DocumentationLink,\n b: Bold,\n p: Paragraph,\n light: Light,\n ul: List,\n li: ListItem,\n }\n )}\n </Flex>\n );\n};\n\nconst DocumentationLink = (children: React.ReactNode) => (\n <Typography\n tag=\"a\"\n textColor=\"primary600\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href=\"https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters\"\n >\n {children}\n </Typography>\n);\n\nconst Bold = (children: React.ReactNode) => (\n <Typography fontWeight=\"semiBold\">{children}</Typography>\n);\n\nconst Paragraph = (children: React.ReactNode) => <Typography>{children}</Typography>;\n\nconst Light = (children: React.ReactNode) => (\n <Typography textColor=\"neutral600\">{children}</Typography>\n);\n\nconst List = (children: React.ReactNode) => (\n <Box paddingLeft={6}>\n <ul>{children}</ul>\n </Box>\n);\n\nconst LiStyled = styled.li`\n list-style: disc;\n &::marker {\n color: ${({ theme }) => theme.colors.neutral800};\n }\n`;\n\nconst ListItem = (children: React.ReactNode) => <LiStyled>{children}</LiStyled>;\n\nexport { GuidedTourModal };\n"],"names":["GuidedTourModal","guidedTour","useGuidedTour","state","currentStep","guidedTourState","setCurrentStep","setStepState","isGuidedTourVisible","setSkipped","formatMessage","useIntl","trackUsage","useTracking","stepData","get","LAYOUT_DATA","sectionKeys","Object","keys","sectionName","stepName","split","sectionIndex","indexOf","stepIndex","hasSectionAfter","length","hasStepAfter","handleCtaClick","trackingEvent","handleSkip","_jsx","Portal","ModalWrapper","onClick","padding","justifyContent","FocusTrap","onEscape","_jsxs","Flex","direction","alignItems","background","width","shadow","hasRadius","gap","role","aria-modal","e","stopPropagation","IconButton","withTooltip","label","id","defaultMessage","Cross","Box","paddingLeft","paddingRight","paddingBottom","GuidedTourStepper","title","undefined","cta","onCtaClick","GuidedTourContent","content","Button","variant","styled","theme","colors","neutral800","children","hasSectionBefore","hasStepsBefore","nextSectionIndex","_Fragment","marginRight","minWidth","VerticalDivider","STATES","IS_DONE","minHeight","Typography","textColor","Number","IS_ACTIVE","paddingTop","fontWeight","tag","target","LinkButton","NavLink","endIcon","ArrowRight","to","documentationLink","DocumentationLink","b","Bold","p","Paragraph","light","Light","ul","List","li","ListItem","rel","href","LiStyled"],"mappings":";;;;;;;;;;;;;;;AAyBA;;AAEkG,2GAE5FA,eAAkB,GAAA,IAAA;AACtB,IAAA,MAAMC,UAAaC,GAAAA,sBAAAA,CAAc,iBAAmB,EAAA,CAACC,KAAUA,GAAAA,KAAAA,CAAAA;AAE/D,IAAA,MAAM,EACJC,WAAW,EACXC,eAAe,EACfC,cAAc,EACdC,YAAY,EACZC,mBAAmB,EACnBC,UAAU,EACX,GAAGR,UAAAA;IAEJ,MAAM,EAAES,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,EAAEC,UAAU,EAAE,GAAGC,oBAAAA,EAAAA;IAEvB,IAAI,CAACT,WAAe,IAAA,CAACI,mBAAqB,EAAA;QACxC,OAAO,IAAA;AACT;IAEA,MAAMM,QAAAA,GAAWC,IAAIC,qBAAaZ,EAAAA,WAAAA,CAAAA;IAClC,MAAMa,WAAAA,GAAcC,MAAOC,CAAAA,IAAI,CAACd,eAAAA,CAAAA;AAChC,IAAA,MAAM,CAACe,WAAaC,EAAAA,QAAAA,CAAS,GAAGjB,WAAAA,CAAYkB,KAAK,CAAC,GAAA,CAAA;IAIlD,MAAMC,YAAAA,GAAeN,WAAYO,CAAAA,OAAO,CAACJ,WAAAA,CAAAA;IACzC,MAAMK,SAAAA,GAAYP,OAAOC,IAAI,CAACd,eAAe,CAACe,WAAAA,CAAY,CAAEI,CAAAA,OAAO,CAACH,QAAAA,CAAAA;AACpE,IAAA,MAAMK,eAAkBH,GAAAA,YAAAA,GAAeN,WAAYU,CAAAA,MAAM,GAAG,CAAA;IAC5D,MAAMC,YAAAA,GAAeH,SAAYP,GAAAA,MAAAA,CAAOC,IAAI,CAACd,eAAe,CAACe,WAAAA,CAAY,CAAEO,CAAAA,MAAM,GAAG,CAAA;AAEpF,IAAA,MAAME,cAAiB,GAAA,IAAA;AACrBtB,QAAAA,YAAAA,CAAaH,WAAa,EAAA,IAAA,CAAA;AAE1B,QAAA,IAAIU,QAAU,EAAA;AACZF,YAAAA,UAAAA,CAAWE,SAASgB,aAAa,CAAA;AACnC;QAEAxB,cAAe,CAAA,IAAA,CAAA;AACjB,KAAA;AAEA,IAAA,MAAMyB,UAAa,GAAA,IAAA;QACjBtB,UAAW,CAAA,IAAA,CAAA;QACXH,cAAe,CAAA,IAAA,CAAA;QACfM,UAAW,CAAA,mBAAA,CAAA;AACb,KAAA;AAEA,IAAA,qBACEoB,cAACC,CAAAA,mBAAAA,EAAAA;AACC,QAAA,QAAA,gBAAAD,cAACE,CAAAA,YAAAA,EAAAA;YAAaC,OAASN,EAAAA,cAAAA;YAAgBO,OAAS,EAAA,CAAA;YAAGC,cAAe,EAAA,QAAA;AAChE,YAAA,QAAA,gBAAAL,cAACM,CAAAA,sBAAAA,EAAAA;gBAAUC,QAAUV,EAAAA,cAAAA;AACnB,gBAAA,QAAA,gBAAAW,eAACC,CAAAA,iBAAAA,EAAAA;oBACCC,SAAU,EAAA,QAAA;oBACVC,UAAW,EAAA,SAAA;oBACXC,UAAW,EAAA,UAAA;oBACXC,KAAO,EAAA,CAAC,KAAK,CAAC;oBACdC,MAAO,EAAA,aAAA;oBACPC,SAAS,EAAA,IAAA;oBACTX,OAAS,EAAA,CAAA;oBACTY,GAAK,EAAA,CAAA;oBACLC,IAAK,EAAA,QAAA;oBACLC,YAAU,EAAA,IAAA;oBACVf,OAAS,EAAA,CAACgB,CAAMA,GAAAA,CAAAA,CAAEC,eAAe,EAAA;;sCAEjCpB,cAACS,CAAAA,iBAAAA,EAAAA;4BAAKJ,cAAe,EAAA,UAAA;AACnB,4BAAA,QAAA,gBAAAL,cAACqB,CAAAA,uBAAAA,EAAAA;gCACClB,OAASN,EAAAA,cAAAA;gCACTyB,WAAa,EAAA,KAAA;AACbC,gCAAAA,KAAAA,EAAO7C,aAAc,CAAA;oCACnB8C,EAAI,EAAA,uBAAA;oCACJC,cAAgB,EAAA;AAClB,iCAAA,CAAA;AAEA,gCAAA,QAAA,gBAAAzB,cAAC0B,CAAAA,WAAAA,EAAAA,EAAAA;;;sCAGL1B,cAAC2B,CAAAA,gBAAAA,EAAAA;4BACCC,WAAa,EAAA,CAAA;4BACbC,YAAc,EAAA,CAAA;AACdC,4BAAAA,aAAAA,EAAe,CAAClC,YAAAA,IAAgB,CAACF,eAAAA,GAAkB,CAAI,GAAA,CAAA;AAEvD,4BAAA,QAAA,gBAAAM,cAAC+B,CAAAA,iBAAAA,EAAAA;AACCC,gCAAAA,KAAAA,EAAOlD,QAAY,IAAA,OAAA,IAAWA,QAAWA,GAAAA,QAAAA,CAASkD,KAAK,GAAGC,SAAAA;AAC1DC,gCAAAA,GAAAA,EAAKpD,QAAY,IAAA,KAAA,IAASA,QAAWA,GAAAA,QAAAA,CAASoD,GAAG,GAAGD,SAAAA;gCACpDE,UAAYtC,EAAAA,cAAAA;gCACZN,YAAcA,EAAAA,YAAAA;gCACdE,SAAWA,EAAAA,SAAAA;gCACXC,eAAiBA,EAAAA,eAAAA;0CAEhBZ,QAAY,IAAA,SAAA,IAAaA,0BAAYkB,cAACoC,CAAAA,iBAAAA,EAAAA;AAAmB,oCAAA,GAAGtD,SAASuD;;;;AAGzE,wBAAA,EAAE,CAACzC,YAAAA,IAAgB,CAACF,eAAc,mBACjCM,cAACS,CAAAA,iBAAAA,EAAAA;4BAAKJ,cAAe,EAAA,UAAA;AACnB,4BAAA,QAAA,gBAAAL,cAACsC,CAAAA,mBAAAA,EAAAA;gCAAOC,OAAQ,EAAA,UAAA;gCAAWpC,OAASJ,EAAAA,UAAAA;0CACjCrB,aAAc,CAAA;oCACb8C,EAAI,EAAA,gCAAA;oCACJC,cAAgB,EAAA;AAClB,iCAAA;;;;;;;;AASlB;AAEA,MAAMvB,YAAAA,GAAesC,aAAsB/B,CAAAA,iBAAAA,CAAK;;;;;AAKlC,cAAA,EAAE,CAAC,EAAEgC,KAAK,EAAE,GAAK,CAAC,EAAEA,KAAMC,CAAAA,MAAM,CAACC,UAAU,CAAC,EAAE,CAAC,CAAC;AAC9D,CAAC;AAmBD,MAAMZ,oBAAoB,CAAC,EACzBC,KAAK,EACLY,QAAQ,EACRV,GAAG,EACHC,UAAU,EACV5C,YAAY,EACZE,SAAS,EACTC,eAAe,EACQ,GAAA;IACvB,MAAM,EAAEhB,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,MAAMkE,mBAAmBtD,YAAe,GAAA,CAAA;AACxC,IAAA,MAAMuD,iBAAiBrD,SAAY,GAAA,CAAA;AACnC,IAAA,MAAMsD,mBAAmBxD,YAAe,GAAA,CAAA;IAExC,qBACEiB,eAAA,CAAAwC,mBAAA,EAAA;;0BACExC,eAACC,CAAAA,iBAAAA,EAAAA;gBAAKE,UAAW,EAAA,SAAA;;kCACfX,cAACS,CAAAA,iBAAAA,EAAAA;wBAAKwC,WAAa,EAAA,CAAA;wBAAG5C,cAAe,EAAA,QAAA;wBAAS6C,QAAU,EAAA,CAAC,IAAI,CAAC;AAC3DL,wBAAAA,QAAAA,EAAAA,gBAAAA,kBAAoB7C,cAACmD,CAAAA,yBAAAA,EAAAA;AAAgBhF,4BAAAA,KAAAA,EAAOiF,iBAAOC,OAAO;4BAAEC,SAAW,EAAA,CAAC,MAAM;;;kCAEjFtD,cAACuD,CAAAA,uBAAAA,EAAAA;wBAAWhB,OAAQ,EAAA,OAAA;wBAAQiB,SAAU,EAAA,YAAA;kCACnC9E,aAAc,CAAA;4BACb8C,EAAI,EAAA,iCAAA;4BACJC,cAAgB,EAAA;AAClB,yBAAA;;;;0BAGJjB,eAACC,CAAAA,iBAAAA,EAAAA;;kCACCT,cAACS,CAAAA,iBAAAA,EAAAA;wBAAKwC,WAAa,EAAA,CAAA;wBAAGC,QAAU,EAAA,CAAC,IAAI,CAAC;AACpC,wBAAA,QAAA,gBAAAlD,cAACyD,CAAAA,gBAAAA,EAAAA;AACCtF,4BAAAA,KAAAA,EAAO2E,cAAiBM,GAAAA,gBAAAA,CAAOC,OAAO,GAAGD,iBAAOM,SAAS;4BACzDC,UAAY,EAAA,CAAA;4BACZ7B,aAAe,EAAA,CAAA;sCAEdvC,YAAe,GAAA;;;AAGnByC,oBAAAA,KAAAA,kBACChC,cAACuD,CAAAA,uBAAAA,EAAAA;wBAAWhB,OAAQ,EAAA,OAAA;wBAAQqB,UAAW,EAAA,MAAA;wBAAOJ,SAAU,EAAA,YAAA;wBAAaK,GAAI,EAAA,IAAA;wBAAKrC,EAAG,EAAA,OAAA;kCAC9E9C,aAAcsD,CAAAA,KAAAA;;;;0BAIrBxB,eAACC,CAAAA,iBAAAA,EAAAA;gBAAKE,UAAW,EAAA,SAAA;;kCACfX,cAACS,CAAAA,iBAAAA,EAAAA;wBAAKwC,WAAa,EAAA,CAAA;wBAAGvC,SAAU,EAAA,QAAA;wBAASL,cAAe,EAAA,QAAA;wBAAS6C,QAAU,EAAA,CAAC,IAAI,CAAC;kCAC9ExD,eACC,kBAAAc,eAAA,CAAAwC,mBAAA,EAAA;;8CACEhD,cAACmD,CAAAA,yBAAAA,EAAAA;AAAgBhF,oCAAAA,KAAAA,EAAOiF,iBAAOC;;AAC9BP,gCAAAA,cAAAA,kBACC9C,cAACyD,CAAAA,gBAAAA,EAAAA;AAAOtF,oCAAAA,KAAAA,EAAOiF,iBAAOM,SAAS;oCAAEC,UAAY,EAAA,CAAA;8CAC1CZ,gBAAmB,GAAA;;;;;kCAM9BvC,eAACmB,CAAAA,gBAAAA,EAAAA;;AACEiB,4BAAAA,QAAAA;AACAV,4BAAAA,GAAAA,KACEA,GAAAA,CAAI4B,MAAM,iBACT9D,cAAC+D,CAAAA,uBAAAA,EAAAA;gCACCF,GAAKG,EAAAA,sBAAAA;AACLC,gCAAAA,OAAAA,gBAASjE,cAACkE,CAAAA,gBAAAA,EAAAA,EAAAA,CAAAA;gCACV/D,OAASgC,EAAAA,UAAAA;AACTgC,gCAAAA,EAAAA,EAAIjC,IAAI4B,MAAM;AAEbpF,gCAAAA,QAAAA,EAAAA,aAAAA,CAAcwD,IAAIF,KAAK;+CAG1BhC,cAACsC,CAAAA,mBAAAA,EAAAA;AAAO2B,gCAAAA,OAAAA,gBAASjE,cAACkE,CAAAA,gBAAAA,EAAAA,EAAAA,CAAAA;gCAAe/D,OAASgC,EAAAA,UAAAA;AACvCzD,gCAAAA,QAAAA,EAAAA,aAAAA,CAAcwD,IAAIF,KAAK;AAE5B,6BAAA,CAAA;;;;;AAGLc,YAAAA,cAAAA,IAAkBpD,iCACjBM,cAAC2B,CAAAA,gBAAAA,EAAAA;gBAAIgC,UAAY,EAAA,CAAA;AACf,gBAAA,QAAA,gBAAA3D,cAACS,CAAAA,iBAAAA,EAAAA;oBAAKwC,WAAa,EAAA,CAAA;oBAAG5C,cAAe,EAAA,QAAA;oBAASQ,KAAO,EAAA,CAAC,IAAI,CAAC;AACzD,oBAAA,QAAA,gBAAAb,cAACmD,CAAAA,yBAAAA,EAAAA;AAAgBhF,wBAAAA,KAAAA,EAAOiF,iBAAOC,OAAO;wBAAEC,SAAW,EAAA,CAAC,MAAM;;;;;;AAMtE,CAAA;AASA,MAAMlB,oBAAoB,CAAC,EAAEZ,EAAE,EAAEC,cAAc,EAA0B,GAAA;IACvE,MAAM,EAAE/C,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,qBACEqB,cAACS,CAAAA,iBAAAA,EAAAA;QAAKC,SAAU,EAAA,QAAA;QAASC,UAAW,EAAA,SAAA;QAAUK,GAAK,EAAA,CAAA;QAAGc,aAAe,EAAA,CAAA;kBAClEpD,aACC,CAAA;AAAE8C,YAAAA,EAAAA;AAAIC,YAAAA;SACN,EAAA;YACE2C,iBAAmBC,EAAAA,iBAAAA;YACnBC,CAAGC,EAAAA,IAAAA;YACHC,CAAGC,EAAAA,SAAAA;YACHC,KAAOC,EAAAA,KAAAA;YACPC,EAAIC,EAAAA,IAAAA;YACJC,EAAIC,EAAAA;AACN,SAAA;;AAIR,CAAA;AAEA,MAAMV,iBAAAA,GAAoB,CAACzB,QAAAA,iBACzB5C,cAACuD,CAAAA,uBAAAA,EAAAA;QACCM,GAAI,EAAA,GAAA;QACJL,SAAU,EAAA,YAAA;QACVM,MAAO,EAAA,QAAA;QACPkB,GAAI,EAAA,qBAAA;QACJC,IAAK,EAAA,uHAAA;AAEJrC,QAAAA,QAAAA,EAAAA;;AAIL,MAAM2B,IAAAA,GAAO,CAAC3B,QAAAA,iBACZ5C,cAACuD,CAAAA,uBAAAA,EAAAA;QAAWK,UAAW,EAAA,UAAA;AAAYhB,QAAAA,QAAAA,EAAAA;;AAGrC,MAAM6B,SAAAA,GAAY,CAAC7B,QAAAA,iBAA8B5C,cAACuD,CAAAA,uBAAAA,EAAAA;AAAYX,QAAAA,QAAAA,EAAAA;;AAE9D,MAAM+B,KAAAA,GAAQ,CAAC/B,QAAAA,iBACb5C,cAACuD,CAAAA,uBAAAA,EAAAA;QAAWC,SAAU,EAAA,YAAA;AAAcZ,QAAAA,QAAAA,EAAAA;;AAGtC,MAAMiC,IAAAA,GAAO,CAACjC,QAAAA,iBACZ5C,cAAC2B,CAAAA,gBAAAA,EAAAA;QAAIC,WAAa,EAAA,CAAA;AAChB,QAAA,QAAA,gBAAA5B,cAAC4E,CAAAA,IAAAA,EAAAA;AAAIhC,YAAAA,QAAAA,EAAAA;;;AAIT,MAAMsC,QAAAA,GAAW1C,aAAOsC,CAAAA,EAAE;;;WAGf,EAAE,CAAC,EAAErC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,MAAM,CAACC,UAAU,CAAC;;AAEpD,CAAC;AAED,MAAMoC,QAAAA,GAAW,CAACnC,QAAAA,iBAA8B5C,cAACkF,CAAAA,QAAAA,EAAAA;AAAUtC,QAAAA,QAAAA,EAAAA;;;;;"}
|