@strapi/admin 5.25.0 → 5.26.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/App.js +6 -2
- package/dist/admin/admin/src/App.js.map +1 -1
- package/dist/admin/admin/src/App.mjs +7 -3
- package/dist/admin/admin/src/App.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.js +11 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.mjs +11 -1
- package/dist/admin/admin/src/components/GuidedTour/Context.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js +160 -23
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs +162 -25
- package/dist/admin/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js +28 -9
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs +30 -11
- package/dist/admin/admin/src/components/GuidedTour/Steps/Step.mjs.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/migrations.js +2 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/migrations.js.map +1 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/migrations.mjs +2 -1
- package/dist/admin/admin/src/components/GuidedTour/utils/migrations.mjs.map +1 -1
- package/dist/admin/admin/src/components/NpsSurvey.js +2 -1
- package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
- package/dist/admin/admin/src/components/NpsSurvey.mjs +2 -1
- package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
- package/dist/admin/admin/src/features/Tracking.js +2 -1
- package/dist/admin/admin/src/features/Tracking.js.map +1 -1
- package/dist/admin/admin/src/features/Tracking.mjs +2 -1
- package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
- package/dist/admin/admin/src/hooks/useAIAvailability.js +13 -0
- package/dist/admin/admin/src/hooks/useAIAvailability.js.map +1 -0
- package/dist/admin/admin/src/hooks/useAIAvailability.mjs +11 -0
- package/dist/admin/admin/src/hooks/useAIAvailability.mjs.map +1 -0
- package/dist/admin/admin/src/pages/Home/HomePage.js +1 -0
- package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
- package/dist/admin/admin/src/pages/Home/HomePage.mjs +1 -0
- package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +12 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +12 -1
- package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
- package/dist/admin/admin/src/render.js +6 -1
- package/dist/admin/admin/src/render.js.map +1 -1
- package/dist/admin/admin/src/render.mjs +6 -1
- package/dist/admin/admin/src/render.mjs.map +1 -1
- package/dist/admin/admin/src/translations/en.json.js +2 -0
- package/dist/admin/admin/src/translations/en.json.js.map +1 -1
- package/dist/admin/admin/src/translations/en.json.mjs +2 -0
- package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
- package/dist/admin/ee/admin/src/components/GlobalNotifications.js +11 -0
- package/dist/admin/ee/admin/src/components/GlobalNotifications.js.map +1 -0
- package/dist/admin/ee/admin/src/components/GlobalNotifications.mjs +9 -0
- package/dist/admin/ee/admin/src/components/GlobalNotifications.mjs.map +1 -0
- package/dist/admin/ee/admin/src/hooks/useAIAvailability.js +11 -0
- package/dist/admin/ee/admin/src/hooks/useAIAvailability.js.map +1 -0
- package/dist/admin/ee/admin/src/hooks/useAIAvailability.mjs +9 -0
- package/dist/admin/ee/admin/src/hooks/useAIAvailability.mjs.map +1 -0
- package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.js +82 -0
- package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.js.map +1 -0
- package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.mjs +80 -0
- package/dist/admin/ee/admin/src/hooks/useAIUsageWarning.mjs.map +1 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js +102 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js.map +1 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs +100 -0
- package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs.map +1 -0
- package/dist/admin/ee/admin/src/services/ai.js +30 -0
- package/dist/admin/ee/admin/src/services/ai.js.map +1 -0
- package/dist/admin/ee/admin/src/services/ai.mjs +26 -0
- package/dist/admin/ee/admin/src/services/ai.mjs.map +1 -0
- package/dist/admin/ee.js +4 -0
- package/dist/admin/ee.js.map +1 -1
- package/dist/admin/ee.mjs +2 -0
- package/dist/admin/ee.mjs.map +1 -1
- package/dist/admin/index.js +2 -0
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +1 -0
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/src/components/GuidedTour/Context.d.ts +7 -0
- package/dist/admin/src/components/GuidedTour/Steps/ContentTypeBuilderSteps.d.ts +7 -16
- package/dist/admin/src/components/GuidedTour/Tours.d.ts +1 -22
- package/dist/admin/src/ee.d.ts +2 -0
- package/dist/admin/src/features/Tracking.d.ts +21 -2
- package/dist/admin/src/hooks/useAIAvailability.d.ts +5 -0
- package/dist/admin/src/index.d.ts +2 -0
- package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +2 -2
- package/dist/admin/src/services/admin.d.ts +1 -0
- package/dist/ee/admin/src/components/GlobalNotifications.d.ts +1 -0
- package/dist/ee/admin/src/hooks/useAIAvailability.d.ts +1 -0
- package/dist/ee/admin/src/hooks/useAIUsageWarning.d.ts +5 -0
- package/dist/ee/admin/src/hooks/useLicenseLimits.d.ts +1 -1
- package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.d.ts +1 -0
- package/dist/ee/admin/src/services/ai.d.ts +9 -0
- package/dist/ee/server/src/ai/controllers/ai.d.ts +7 -0
- package/dist/ee/server/src/ai/controllers/ai.d.ts.map +1 -0
- package/dist/ee/server/src/ai/routes/ai.d.ts +13 -0
- package/dist/ee/server/src/ai/routes/ai.d.ts.map +1 -0
- package/dist/ee/server/src/controllers/admin.d.ts +3 -0
- package/dist/ee/server/src/controllers/admin.d.ts.map +1 -1
- package/dist/ee/server/src/controllers/index.d.ts +3 -0
- package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
- package/dist/ee/server/src/index.d.ts +15 -187
- package/dist/ee/server/src/index.d.ts.map +1 -1
- package/dist/server/ee/server/src/ai/controllers/ai.js +218 -0
- package/dist/server/ee/server/src/ai/controllers/ai.js.map +1 -0
- package/dist/server/ee/server/src/ai/controllers/ai.mjs +216 -0
- package/dist/server/ee/server/src/ai/controllers/ai.mjs.map +1 -0
- package/dist/server/ee/server/src/ai/routes/ai.js +32 -0
- package/dist/server/ee/server/src/ai/routes/ai.js.map +1 -0
- package/dist/server/ee/server/src/ai/routes/ai.mjs +30 -0
- package/dist/server/ee/server/src/ai/routes/ai.mjs.map +1 -0
- package/dist/server/ee/server/src/controllers/admin.js +4 -1
- package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
- package/dist/server/ee/server/src/controllers/admin.mjs +4 -1
- package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/ee/server/src/index.js +37 -23
- package/dist/server/ee/server/src/index.js.map +1 -1
- package/dist/server/ee/server/src/index.mjs +37 -23
- package/dist/server/ee/server/src/index.mjs.map +1 -1
- package/dist/server/server/src/controllers/admin.js +5 -1
- package/dist/server/server/src/controllers/admin.js.map +1 -1
- package/dist/server/server/src/controllers/admin.mjs +5 -1
- package/dist/server/server/src/controllers/admin.mjs.map +1 -1
- package/dist/server/src/controllers/admin.d.ts +2 -0
- package/dist/server/src/controllers/admin.d.ts.map +1 -1
- package/dist/server/src/controllers/index.d.ts +2 -0
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +2 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/shared/contracts/admin.d.ts +1 -0
- package/dist/shared/contracts/admin.d.ts.map +1 -1
- package/dist/shared/contracts/ai.d.ts +40 -0
- package/dist/shared/contracts/ai.d.ts.map +1 -0
- package/dist/shared/contracts/users.d.ts +16 -0
- package/dist/shared/contracts/users.d.ts.map +1 -1
- package/package.json +7 -7
package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.js
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var designSystem = require('@strapi/design-system');
|
|
5
|
+
var reactIntl = require('react-intl');
|
|
6
|
+
var styled = require('styled-components');
|
|
7
|
+
var ai = require('../../../../../services/ai.js');
|
|
8
|
+
|
|
9
|
+
const StyledProgressBar = styled.styled(designSystem.ProgressBar)`
|
|
10
|
+
width: 100%;
|
|
11
|
+
background-color: ${({ theme })=>theme.colors.neutral200};
|
|
12
|
+
> div {
|
|
13
|
+
background-color: ${({ theme })=>theme.colors.neutral700};
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
const StyledGridItem = styled.styled(designSystem.Grid.Item)`
|
|
17
|
+
${({ theme })=>theme.breakpoints.large} {
|
|
18
|
+
grid-column: 7 / 13;
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
const AIUsage = ()=>{
|
|
22
|
+
const { formatMessage } = reactIntl.useIntl();
|
|
23
|
+
const { data, isLoading, error } = ai.useGetAIUsageQuery(undefined, {
|
|
24
|
+
refetchOnMountOrArgChange: true
|
|
25
|
+
});
|
|
26
|
+
if (isLoading) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
if (error || !data) {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
if (!data.subscription?.cmsAiEnabled) {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
// Calculate remaining credits and total
|
|
36
|
+
const totalCredits = data.subscription.cmsAiCreditsBase;
|
|
37
|
+
const usedCredits = data.cmsAiCreditsUsed;
|
|
38
|
+
const maxCredits = data.subscription.cmsAiCreditsMaxUsage;
|
|
39
|
+
const overage = usedCredits - totalCredits;
|
|
40
|
+
const percentRemaining = usedCredits / totalCredits * 100;
|
|
41
|
+
const percentOverage = usedCredits / maxCredits * 100;
|
|
42
|
+
const isInOverages = overage > 0 && maxCredits !== totalCredits;
|
|
43
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(StyledGridItem, {
|
|
44
|
+
col: 6,
|
|
45
|
+
s: 12,
|
|
46
|
+
direction: "column",
|
|
47
|
+
alignItems: "start",
|
|
48
|
+
gap: 2,
|
|
49
|
+
children: [
|
|
50
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
51
|
+
variant: "sigma",
|
|
52
|
+
textColor: "neutral600",
|
|
53
|
+
children: formatMessage({
|
|
54
|
+
id: 'Settings.application.ai-usage',
|
|
55
|
+
defaultMessage: 'AI Usage'
|
|
56
|
+
})
|
|
57
|
+
}),
|
|
58
|
+
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
59
|
+
gap: 2,
|
|
60
|
+
direction: "column",
|
|
61
|
+
alignItems: "flex-start",
|
|
62
|
+
children: [
|
|
63
|
+
!isInOverages && /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
64
|
+
children: [
|
|
65
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
66
|
+
width: "100%",
|
|
67
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(StyledProgressBar, {
|
|
68
|
+
value: percentRemaining,
|
|
69
|
+
size: "M"
|
|
70
|
+
})
|
|
71
|
+
}),
|
|
72
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
73
|
+
variant: "omega",
|
|
74
|
+
children: `${usedCredits.toFixed(2)} credits used from ${totalCredits} credits available in your plan`
|
|
75
|
+
})
|
|
76
|
+
]
|
|
77
|
+
}),
|
|
78
|
+
isInOverages && /*#__PURE__*/ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
79
|
+
children: [
|
|
80
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
81
|
+
width: "100%",
|
|
82
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(StyledProgressBar, {
|
|
83
|
+
value: percentOverage,
|
|
84
|
+
size: "M",
|
|
85
|
+
color: "danger"
|
|
86
|
+
})
|
|
87
|
+
}),
|
|
88
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
89
|
+
variant: "omega",
|
|
90
|
+
textColor: "danger600",
|
|
91
|
+
children: `${overage.toFixed(2)} credits used above the ${totalCredits} credits available in your plan`
|
|
92
|
+
})
|
|
93
|
+
]
|
|
94
|
+
})
|
|
95
|
+
]
|
|
96
|
+
})
|
|
97
|
+
]
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
exports.AIUsage = AIUsage;
|
|
102
|
+
//# sourceMappingURL=AIUsage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIUsage.js","sources":["../../../../../../../../../../ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.tsx"],"sourcesContent":["import { Flex, Typography, Grid, ProgressBar } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useGetAIUsageQuery } from '../../../../../services/ai';\n\nconst StyledProgressBar = styled(ProgressBar)`\n width: 100%;\n background-color: ${({ theme }) => theme.colors.neutral200};\n > div {\n background-color: ${({ theme }) => theme.colors.neutral700};\n }\n`;\n\nconst StyledGridItem = styled(Grid.Item)`\n ${({ theme }) => theme.breakpoints.large} {\n grid-column: 7 / 13;\n }\n`;\n\nexport const AIUsage = () => {\n const { formatMessage } = useIntl();\n const { data, isLoading, error } = useGetAIUsageQuery(undefined, {\n refetchOnMountOrArgChange: true,\n });\n\n if (isLoading) {\n return null;\n }\n\n if (error || !data) {\n return null;\n }\n\n if (!data.subscription?.cmsAiEnabled) {\n return null;\n }\n\n // Calculate remaining credits and total\n const totalCredits = data.subscription.cmsAiCreditsBase;\n const usedCredits = data.cmsAiCreditsUsed;\n const maxCredits = data.subscription.cmsAiCreditsMaxUsage;\n const overage = usedCredits - totalCredits;\n const percentRemaining = (usedCredits / totalCredits) * 100;\n const percentOverage = (usedCredits / maxCredits) * 100;\n\n const isInOverages = overage > 0 && maxCredits !== totalCredits;\n\n return (\n <StyledGridItem col={6} s={12} direction=\"column\" alignItems=\"start\" gap={2}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.application.ai-usage',\n defaultMessage: 'AI Usage',\n })}\n </Typography>\n <Flex gap={2} direction=\"column\" alignItems=\"flex-start\">\n {!isInOverages && (\n <>\n <Flex width=\"100%\">\n <StyledProgressBar value={percentRemaining} size=\"M\" />\n </Flex>\n <Typography variant=\"omega\">\n {`${usedCredits.toFixed(2)} credits used from ${totalCredits} credits available in your plan`}\n </Typography>\n </>\n )}\n {isInOverages && (\n <>\n <Flex width=\"100%\">\n <StyledProgressBar value={percentOverage} size=\"M\" color=\"danger\" />\n </Flex>\n <Typography variant=\"omega\" textColor=\"danger600\">\n {`${overage.toFixed(2)} credits used above the ${totalCredits} credits available in your plan`}\n </Typography>\n </>\n )}\n </Flex>\n </StyledGridItem>\n );\n};\n"],"names":["StyledProgressBar","styled","ProgressBar","theme","colors","neutral200","neutral700","StyledGridItem","Grid","Item","breakpoints","large","AIUsage","formatMessage","useIntl","data","isLoading","error","useGetAIUsageQuery","undefined","refetchOnMountOrArgChange","subscription","cmsAiEnabled","totalCredits","cmsAiCreditsBase","usedCredits","cmsAiCreditsUsed","maxCredits","cmsAiCreditsMaxUsage","overage","percentRemaining","percentOverage","isInOverages","_jsxs","col","s","direction","alignItems","gap","_jsx","Typography","variant","textColor","id","defaultMessage","Flex","_Fragment","width","value","size","toFixed","color"],"mappings":"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"}
|
package/dist/admin/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.mjs
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { ProgressBar, Grid, Typography, Flex } from '@strapi/design-system';
|
|
3
|
+
import { useIntl } from 'react-intl';
|
|
4
|
+
import { styled } from 'styled-components';
|
|
5
|
+
import { useGetAIUsageQuery } from '../../../../../services/ai.mjs';
|
|
6
|
+
|
|
7
|
+
const StyledProgressBar = styled(ProgressBar)`
|
|
8
|
+
width: 100%;
|
|
9
|
+
background-color: ${({ theme })=>theme.colors.neutral200};
|
|
10
|
+
> div {
|
|
11
|
+
background-color: ${({ theme })=>theme.colors.neutral700};
|
|
12
|
+
}
|
|
13
|
+
`;
|
|
14
|
+
const StyledGridItem = styled(Grid.Item)`
|
|
15
|
+
${({ theme })=>theme.breakpoints.large} {
|
|
16
|
+
grid-column: 7 / 13;
|
|
17
|
+
}
|
|
18
|
+
`;
|
|
19
|
+
const AIUsage = ()=>{
|
|
20
|
+
const { formatMessage } = useIntl();
|
|
21
|
+
const { data, isLoading, error } = useGetAIUsageQuery(undefined, {
|
|
22
|
+
refetchOnMountOrArgChange: true
|
|
23
|
+
});
|
|
24
|
+
if (isLoading) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
if (error || !data) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
if (!data.subscription?.cmsAiEnabled) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
// Calculate remaining credits and total
|
|
34
|
+
const totalCredits = data.subscription.cmsAiCreditsBase;
|
|
35
|
+
const usedCredits = data.cmsAiCreditsUsed;
|
|
36
|
+
const maxCredits = data.subscription.cmsAiCreditsMaxUsage;
|
|
37
|
+
const overage = usedCredits - totalCredits;
|
|
38
|
+
const percentRemaining = usedCredits / totalCredits * 100;
|
|
39
|
+
const percentOverage = usedCredits / maxCredits * 100;
|
|
40
|
+
const isInOverages = overage > 0 && maxCredits !== totalCredits;
|
|
41
|
+
return /*#__PURE__*/ jsxs(StyledGridItem, {
|
|
42
|
+
col: 6,
|
|
43
|
+
s: 12,
|
|
44
|
+
direction: "column",
|
|
45
|
+
alignItems: "start",
|
|
46
|
+
gap: 2,
|
|
47
|
+
children: [
|
|
48
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
49
|
+
variant: "sigma",
|
|
50
|
+
textColor: "neutral600",
|
|
51
|
+
children: formatMessage({
|
|
52
|
+
id: 'Settings.application.ai-usage',
|
|
53
|
+
defaultMessage: 'AI Usage'
|
|
54
|
+
})
|
|
55
|
+
}),
|
|
56
|
+
/*#__PURE__*/ jsxs(Flex, {
|
|
57
|
+
gap: 2,
|
|
58
|
+
direction: "column",
|
|
59
|
+
alignItems: "flex-start",
|
|
60
|
+
children: [
|
|
61
|
+
!isInOverages && /*#__PURE__*/ jsxs(Fragment, {
|
|
62
|
+
children: [
|
|
63
|
+
/*#__PURE__*/ jsx(Flex, {
|
|
64
|
+
width: "100%",
|
|
65
|
+
children: /*#__PURE__*/ jsx(StyledProgressBar, {
|
|
66
|
+
value: percentRemaining,
|
|
67
|
+
size: "M"
|
|
68
|
+
})
|
|
69
|
+
}),
|
|
70
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
71
|
+
variant: "omega",
|
|
72
|
+
children: `${usedCredits.toFixed(2)} credits used from ${totalCredits} credits available in your plan`
|
|
73
|
+
})
|
|
74
|
+
]
|
|
75
|
+
}),
|
|
76
|
+
isInOverages && /*#__PURE__*/ jsxs(Fragment, {
|
|
77
|
+
children: [
|
|
78
|
+
/*#__PURE__*/ jsx(Flex, {
|
|
79
|
+
width: "100%",
|
|
80
|
+
children: /*#__PURE__*/ jsx(StyledProgressBar, {
|
|
81
|
+
value: percentOverage,
|
|
82
|
+
size: "M",
|
|
83
|
+
color: "danger"
|
|
84
|
+
})
|
|
85
|
+
}),
|
|
86
|
+
/*#__PURE__*/ jsx(Typography, {
|
|
87
|
+
variant: "omega",
|
|
88
|
+
textColor: "danger600",
|
|
89
|
+
children: `${overage.toFixed(2)} credits used above the ${totalCredits} credits available in your plan`
|
|
90
|
+
})
|
|
91
|
+
]
|
|
92
|
+
})
|
|
93
|
+
]
|
|
94
|
+
})
|
|
95
|
+
]
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
export { AIUsage };
|
|
100
|
+
//# sourceMappingURL=AIUsage.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIUsage.mjs","sources":["../../../../../../../../../../ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.tsx"],"sourcesContent":["import { Flex, Typography, Grid, ProgressBar } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useGetAIUsageQuery } from '../../../../../services/ai';\n\nconst StyledProgressBar = styled(ProgressBar)`\n width: 100%;\n background-color: ${({ theme }) => theme.colors.neutral200};\n > div {\n background-color: ${({ theme }) => theme.colors.neutral700};\n }\n`;\n\nconst StyledGridItem = styled(Grid.Item)`\n ${({ theme }) => theme.breakpoints.large} {\n grid-column: 7 / 13;\n }\n`;\n\nexport const AIUsage = () => {\n const { formatMessage } = useIntl();\n const { data, isLoading, error } = useGetAIUsageQuery(undefined, {\n refetchOnMountOrArgChange: true,\n });\n\n if (isLoading) {\n return null;\n }\n\n if (error || !data) {\n return null;\n }\n\n if (!data.subscription?.cmsAiEnabled) {\n return null;\n }\n\n // Calculate remaining credits and total\n const totalCredits = data.subscription.cmsAiCreditsBase;\n const usedCredits = data.cmsAiCreditsUsed;\n const maxCredits = data.subscription.cmsAiCreditsMaxUsage;\n const overage = usedCredits - totalCredits;\n const percentRemaining = (usedCredits / totalCredits) * 100;\n const percentOverage = (usedCredits / maxCredits) * 100;\n\n const isInOverages = overage > 0 && maxCredits !== totalCredits;\n\n return (\n <StyledGridItem col={6} s={12} direction=\"column\" alignItems=\"start\" gap={2}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'Settings.application.ai-usage',\n defaultMessage: 'AI Usage',\n })}\n </Typography>\n <Flex gap={2} direction=\"column\" alignItems=\"flex-start\">\n {!isInOverages && (\n <>\n <Flex width=\"100%\">\n <StyledProgressBar value={percentRemaining} size=\"M\" />\n </Flex>\n <Typography variant=\"omega\">\n {`${usedCredits.toFixed(2)} credits used from ${totalCredits} credits available in your plan`}\n </Typography>\n </>\n )}\n {isInOverages && (\n <>\n <Flex width=\"100%\">\n <StyledProgressBar value={percentOverage} size=\"M\" color=\"danger\" />\n </Flex>\n <Typography variant=\"omega\" textColor=\"danger600\">\n {`${overage.toFixed(2)} credits used above the ${totalCredits} credits available in your plan`}\n </Typography>\n </>\n )}\n </Flex>\n </StyledGridItem>\n );\n};\n"],"names":["StyledProgressBar","styled","ProgressBar","theme","colors","neutral200","neutral700","StyledGridItem","Grid","Item","breakpoints","large","AIUsage","formatMessage","useIntl","data","isLoading","error","useGetAIUsageQuery","undefined","refetchOnMountOrArgChange","subscription","cmsAiEnabled","totalCredits","cmsAiCreditsBase","usedCredits","cmsAiCreditsUsed","maxCredits","cmsAiCreditsMaxUsage","overage","percentRemaining","percentOverage","isInOverages","_jsxs","col","s","direction","alignItems","gap","_jsx","Typography","variant","textColor","id","defaultMessage","Flex","_Fragment","width","value","size","toFixed","color"],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var api = require('../../../../admin/src/services/api.js');
|
|
4
|
+
|
|
5
|
+
const aiService = api.adminApi.injectEndpoints({
|
|
6
|
+
endpoints: (builder)=>({
|
|
7
|
+
getAIUsage: builder.query({
|
|
8
|
+
query: ()=>({
|
|
9
|
+
method: 'GET',
|
|
10
|
+
url: `/admin/ai-usage`
|
|
11
|
+
})
|
|
12
|
+
}),
|
|
13
|
+
getAiToken: builder.query({
|
|
14
|
+
query: ()=>({
|
|
15
|
+
method: 'GET',
|
|
16
|
+
url: '/admin/ai-token'
|
|
17
|
+
}),
|
|
18
|
+
transformResponse (res) {
|
|
19
|
+
return res.data;
|
|
20
|
+
}
|
|
21
|
+
})
|
|
22
|
+
}),
|
|
23
|
+
overrideExisting: false
|
|
24
|
+
});
|
|
25
|
+
const { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;
|
|
26
|
+
|
|
27
|
+
exports.useGetAIUsageQuery = useGetAIUsageQuery;
|
|
28
|
+
exports.useGetAiTokenQuery = useGetAiTokenQuery;
|
|
29
|
+
exports.useLazyGetAiTokenQuery = useLazyGetAiTokenQuery;
|
|
30
|
+
//# sourceMappingURL=ai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.js","sources":["../../../../../../ee/admin/src/services/ai.ts"],"sourcesContent":["import { adminApi } from '../../../../admin/src/services/api';\nimport { GetAiUsage, GetAiToken } from '../../../../shared/contracts/ai';\n\nconst aiService = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n getAIUsage: builder.query<GetAiUsage.Response, void>({\n query: () => ({\n method: 'GET',\n url: `/admin/ai-usage`,\n }),\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: false,\n});\n\nconst { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;\n\nexport { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };\n"],"names":["aiService","adminApi","injectEndpoints","endpoints","builder","getAIUsage","query","method","url","getAiToken","transformResponse","res","data","overrideExisting","useGetAIUsageQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery"],"mappings":";;;;AAGA,MAAMA,SAAAA,GAAYC,YAASC,CAAAA,eAAe,CAAC;IACzCC,SAAW,EAAA,CAACC,WAAa;YACvBC,UAAYD,EAAAA,OAAAA,CAAQE,KAAK,CAA4B;AACnDA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA,CAAC,eAAe;qBACvB;AACF,aAAA,CAAA;YACAC,UAAYL,EAAAA,OAAAA,CAAQE,KAAK,CAAoC;AAC3DA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA;qBACP,CAAA;AACAE,gBAAAA,iBAAAA,CAAAA,CAAkBC,GAAwB,EAAA;AACxC,oBAAA,OAAOA,IAAIC,IAAI;AACjB;AACF,aAAA;SACF,CAAA;IACAC,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAEA,MAAM,EAAEC,kBAAkB,EAAEC,kBAAkB,EAAEC,sBAAsB,EAAE,GAAGhB;;;;;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { adminApi } from '../../../../admin/src/services/api.mjs';
|
|
2
|
+
|
|
3
|
+
const aiService = adminApi.injectEndpoints({
|
|
4
|
+
endpoints: (builder)=>({
|
|
5
|
+
getAIUsage: builder.query({
|
|
6
|
+
query: ()=>({
|
|
7
|
+
method: 'GET',
|
|
8
|
+
url: `/admin/ai-usage`
|
|
9
|
+
})
|
|
10
|
+
}),
|
|
11
|
+
getAiToken: builder.query({
|
|
12
|
+
query: ()=>({
|
|
13
|
+
method: 'GET',
|
|
14
|
+
url: '/admin/ai-token'
|
|
15
|
+
}),
|
|
16
|
+
transformResponse (res) {
|
|
17
|
+
return res.data;
|
|
18
|
+
}
|
|
19
|
+
})
|
|
20
|
+
}),
|
|
21
|
+
overrideExisting: false
|
|
22
|
+
});
|
|
23
|
+
const { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;
|
|
24
|
+
|
|
25
|
+
export { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };
|
|
26
|
+
//# sourceMappingURL=ai.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.mjs","sources":["../../../../../../ee/admin/src/services/ai.ts"],"sourcesContent":["import { adminApi } from '../../../../admin/src/services/api';\nimport { GetAiUsage, GetAiToken } from '../../../../shared/contracts/ai';\n\nconst aiService = adminApi.injectEndpoints({\n endpoints: (builder) => ({\n getAIUsage: builder.query<GetAiUsage.Response, void>({\n query: () => ({\n method: 'GET',\n url: `/admin/ai-usage`,\n }),\n }),\n getAiToken: builder.query<GetAiToken.Response['data'], void>({\n query: () => ({\n method: 'GET',\n url: '/admin/ai-token',\n }),\n transformResponse(res: GetAiToken.Response) {\n return res.data;\n },\n }),\n }),\n overrideExisting: false,\n});\n\nconst { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery } = aiService;\n\nexport { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };\n"],"names":["aiService","adminApi","injectEndpoints","endpoints","builder","getAIUsage","query","method","url","getAiToken","transformResponse","res","data","overrideExisting","useGetAIUsageQuery","useGetAiTokenQuery","useLazyGetAiTokenQuery"],"mappings":";;AAGA,MAAMA,SAAAA,GAAYC,QAASC,CAAAA,eAAe,CAAC;IACzCC,SAAW,EAAA,CAACC,WAAa;YACvBC,UAAYD,EAAAA,OAAAA,CAAQE,KAAK,CAA4B;AACnDA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA,CAAC,eAAe;qBACvB;AACF,aAAA,CAAA;YACAC,UAAYL,EAAAA,OAAAA,CAAQE,KAAK,CAAoC;AAC3DA,gBAAAA,KAAAA,EAAO,KAAO;wBACZC,MAAQ,EAAA,KAAA;wBACRC,GAAK,EAAA;qBACP,CAAA;AACAE,gBAAAA,iBAAAA,CAAAA,CAAkBC,GAAwB,EAAA;AACxC,oBAAA,OAAOA,IAAIC,IAAI;AACjB;AACF,aAAA;SACF,CAAA;IACAC,gBAAkB,EAAA;AACpB,CAAA,CAAA;AAEA,MAAM,EAAEC,kBAAkB,EAAEC,kBAAkB,EAAEC,sBAAsB,EAAE,GAAGhB;;;;"}
|
package/dist/admin/ee.js
CHANGED
|
@@ -2,9 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
var useLicenseLimits = require('./ee/admin/src/hooks/useLicenseLimits.js');
|
|
4
4
|
var useEnterprise = require('./admin/src/hooks/useEnterprise.js');
|
|
5
|
+
var ai = require('./ee/admin/src/services/ai.js');
|
|
6
|
+
var useAIAvailability = require('./ee/admin/src/hooks/useAIAvailability.js');
|
|
5
7
|
|
|
6
8
|
|
|
7
9
|
|
|
8
10
|
exports.useLicenseLimits = useLicenseLimits.useLicenseLimits;
|
|
9
11
|
exports.useEnterprise = useEnterprise.useEnterprise;
|
|
12
|
+
exports.useGetAIUsageQuery = ai.useGetAIUsageQuery;
|
|
13
|
+
exports.useAIAvailability = useAIAvailability.useAIAvailability;
|
|
10
14
|
//# sourceMappingURL=ee.js.map
|
package/dist/admin/ee.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ee.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ee.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
|
package/dist/admin/ee.mjs
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { useLicenseLimits } from './ee/admin/src/hooks/useLicenseLimits.mjs';
|
|
2
2
|
export { useEnterprise } from './admin/src/hooks/useEnterprise.mjs';
|
|
3
|
+
export { useGetAIUsageQuery } from './ee/admin/src/services/ai.mjs';
|
|
4
|
+
export { useAIAvailability } from './ee/admin/src/hooks/useAIAvailability.mjs';
|
|
3
5
|
//# sourceMappingURL=ee.mjs.map
|
package/dist/admin/ee.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ee.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ee.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
package/dist/admin/index.js
CHANGED
|
@@ -34,6 +34,7 @@ var useClipboard = require('./admin/src/hooks/useClipboard.js');
|
|
|
34
34
|
var useElementOnScreen = require('./admin/src/hooks/useElementOnScreen.js');
|
|
35
35
|
var users = require('./admin/src/services/users.js');
|
|
36
36
|
var homepage = require('./admin/src/services/homepage.js');
|
|
37
|
+
var useAIAvailability = require('./admin/src/hooks/useAIAvailability.js');
|
|
37
38
|
var translatedErrors = require('./admin/src/utils/translatedErrors.js');
|
|
38
39
|
var getFetchClient = require('./admin/src/utils/getFetchClient.js');
|
|
39
40
|
var baseQuery = require('./admin/src/utils/baseQuery.js');
|
|
@@ -84,6 +85,7 @@ exports.useClipboard = useClipboard.useClipboard;
|
|
|
84
85
|
exports.useElementOnScreen = useElementOnScreen.useElementOnScreen;
|
|
85
86
|
exports.useAdminUsers = users.useAdminUsers;
|
|
86
87
|
exports.useGetCountDocumentsQuery = homepage.useGetCountDocumentsQuery;
|
|
88
|
+
exports.useAIAvailability = useAIAvailability.useAIAvailability;
|
|
87
89
|
exports.translatedErrors = translatedErrors.translatedErrors;
|
|
88
90
|
exports.FetchError = getFetchClient.FetchError;
|
|
89
91
|
exports.getFetchClient = getFetchClient.getFetchClient;
|
package/dist/admin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/admin/index.mjs
CHANGED
|
@@ -32,6 +32,7 @@ export { useClipboard } from './admin/src/hooks/useClipboard.mjs';
|
|
|
32
32
|
export { useElementOnScreen } from './admin/src/hooks/useElementOnScreen.mjs';
|
|
33
33
|
export { useAdminUsers } from './admin/src/services/users.mjs';
|
|
34
34
|
export { useGetCountDocumentsQuery } from './admin/src/services/homepage.mjs';
|
|
35
|
+
export { useAIAvailability } from './admin/src/hooks/useAIAvailability.mjs';
|
|
35
36
|
export { translatedErrors } from './admin/src/utils/translatedErrors.mjs';
|
|
36
37
|
export { FetchError, getFetchClient, isFetchError } from './admin/src/utils/getFetchClient.mjs';
|
|
37
38
|
export { fetchBaseQuery, isBaseQueryError } from './admin/src/utils/baseQuery.mjs';
|
package/dist/admin/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -34,10 +34,17 @@ type Action = {
|
|
|
34
34
|
} | {
|
|
35
35
|
type: 'remove_completed_action';
|
|
36
36
|
payload: ValueOf<CompletedActions>;
|
|
37
|
+
} | {
|
|
38
|
+
type: 'set_tour_type';
|
|
39
|
+
payload: {
|
|
40
|
+
tourName: ValidTourName;
|
|
41
|
+
tourType: 'ContentTypeBuilderAI' | 'ContentTypeBuilderNoAI';
|
|
42
|
+
};
|
|
37
43
|
};
|
|
38
44
|
type TourState = Record<ValidTourName, {
|
|
39
45
|
currentStep: number;
|
|
40
46
|
isCompleted: boolean;
|
|
47
|
+
tourType?: string;
|
|
41
48
|
}>;
|
|
42
49
|
type State = {
|
|
43
50
|
tours: TourState;
|
|
@@ -3,22 +3,13 @@ import { type StepContentProps } from '../Tours';
|
|
|
3
3
|
export declare const contentTypeBuilderSteps: readonly [{
|
|
4
4
|
readonly name: "Introduction";
|
|
5
5
|
readonly content: ({ Step }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
-
}, {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}, {
|
|
13
|
-
readonly name: "Components";
|
|
14
|
-
readonly content: ({ Step }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
-
}, {
|
|
16
|
-
readonly name: "YourTurn";
|
|
17
|
-
readonly content: ({ Step }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
|
-
}, {
|
|
19
|
-
readonly name: "AddFields";
|
|
20
|
-
readonly content: ({ Step, dispatch }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
21
|
-
}, {
|
|
6
|
+
}, ...({
|
|
7
|
+
name: string;
|
|
8
|
+
content: ({ Step }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
} | {
|
|
10
|
+
name: string;
|
|
11
|
+
content: ({ Step }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
})[], {
|
|
22
13
|
readonly name: "Save";
|
|
23
14
|
readonly when: (completedActions: CompletedActions) => boolean;
|
|
24
15
|
readonly content: ({ Step, dispatch }: StepContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -3,28 +3,7 @@ import { type State, type Action, CompletedActions } from './Context';
|
|
|
3
3
|
import { type Step } from './Steps/Step';
|
|
4
4
|
declare const tours: {
|
|
5
5
|
readonly contentTypeBuilder: {
|
|
6
|
-
|
|
7
|
-
children: React.ReactNode;
|
|
8
|
-
}>;
|
|
9
|
-
Introduction: React.ComponentType<{
|
|
10
|
-
children: React.ReactNode;
|
|
11
|
-
}>;
|
|
12
|
-
CollectionTypes: React.ComponentType<{
|
|
13
|
-
children: React.ReactNode;
|
|
14
|
-
}>;
|
|
15
|
-
SingleTypes: React.ComponentType<{
|
|
16
|
-
children: React.ReactNode;
|
|
17
|
-
}>;
|
|
18
|
-
Components: React.ComponentType<{
|
|
19
|
-
children: React.ReactNode;
|
|
20
|
-
}>;
|
|
21
|
-
YourTurn: React.ComponentType<{
|
|
22
|
-
children: React.ReactNode;
|
|
23
|
-
}>;
|
|
24
|
-
AddFields: React.ComponentType<{
|
|
25
|
-
children: React.ReactNode;
|
|
26
|
-
}>;
|
|
27
|
-
Finish: React.ComponentType<{
|
|
6
|
+
[x: string]: React.ComponentType<{
|
|
28
7
|
children: React.ReactNode;
|
|
29
8
|
}>;
|
|
30
9
|
} & {
|
package/dist/admin/src/ee.d.ts
CHANGED
|
@@ -3,3 +3,5 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { useLicenseLimits } from '../../ee/admin/src/hooks/useLicenseLimits';
|
|
5
5
|
export { useEnterprise } from './hooks/useEnterprise';
|
|
6
|
+
export { useGetAIUsageQuery } from '../../ee/admin/src/services/ai';
|
|
7
|
+
export { useAIAvailability } from '../../ee/admin/src/hooks/useAIAvailability';
|
|
@@ -5,6 +5,7 @@ export interface TelemetryProperties {
|
|
|
5
5
|
useTypescriptOnServer?: boolean;
|
|
6
6
|
useTypescriptOnAdmin?: boolean;
|
|
7
7
|
isHostedOnStrapiCloud?: boolean;
|
|
8
|
+
aiLicenseKey?: string;
|
|
8
9
|
numberOfAllContentTypes?: number;
|
|
9
10
|
numberOfComponents?: number;
|
|
10
11
|
numberOfDynamicZones?: number;
|
|
@@ -25,7 +26,7 @@ declare const TrackingProvider: ({ children }: TrackingProviderProps) => import(
|
|
|
25
26
|
* event so understanding which properties go with which event is very helpful.
|
|
26
27
|
*/
|
|
27
28
|
export interface EventWithoutProperties {
|
|
28
|
-
name: 'changeComponentsOrder' | 'didAddComponentToDynamicZone' | 'didBulkDeleteEntries' | 'didNotBulkDeleteEntries' | 'didChangeDisplayedFields' | 'didCheckDraftRelations' | 'didClickGuidedTourHomepageApiTokens' | 'didClickGuidedTourHomepageContentManager' | 'didClickGuidedTourHomepageContentTypeBuilder' | 'didClickGuidedTourStep1CollectionType' | 'didClickGuidedTourStep2ContentManager' | 'didClickGuidedTourStep3ApiTokens' | 'didClickonBlogSection' | 'didClickonCodeExampleSection' | 'didClickonReadTheDocumentationSection' | 'didClickOnTryStrapiCloudSection' | 'didClickonTutorialSection' | 'didCreateGuidedTourCollectionType' | 'didCreateGuidedTourEntry' | 'didCreateNewRole' | 'didCreateRole' | 'didDeleteToken' | 'didDuplicateRole' | 'didEditEditSettings' | 'didEditEmailTemplates' | 'didEditFieldNameOnContentType' | 'didEditListSettings' | 'didEditMediaLibraryConfig' | 'didEditNameOfContentType' | 'didGenerateGuidedTourApiTokens' | 'didGoToMarketplace' | 'didLaunchGuidedtour' | 'didMissMarketplacePlugin' | 'didNotCreateFirstAdmin' | 'didNotSaveComponent' | 'didPluginLearnMore' | 'didBulkPublishEntries' | 'didNotBulkPublishEntries' | 'didUnpublishEntry' | 'didBulkUnpublishEntries' | 'didNotBulkUnpublishEntries' | 'didSaveComponent' | 'didSaveContentType' | 'didSearch' | 'didSkipGuidedtour' | 'didSubmitPlugin' | 'didSubmitProvider' | 'didUpdateConditions' | 'didSelectAllMediaLibraryElements' | 'didSelectContentTypeFieldSettings' | 'didSelectContentTypeSettings' | 'didEditAuthenticationProvider' | 'didRestoreHistoryVersion' | 'hasClickedCTBAddFieldBanner' | 'removeComponentFromDynamicZone' | 'willAddMoreFieldToContentType' | 'willBulkDeleteEntries' | 'willBulkPublishEntries' | 'willBulkUnpublishEntries' | 'willChangeNumberOfEntriesPerPage' | 'willCheckDraftRelations' | 'willCreateComponent' | 'willCreateComponentFromAttributesModal' | 'willCreateContentType' | 'willCreateFirstAdmin' | 'willCreateNewRole' | 'willCreateRole' | 'willCreateSingleType' | 'willCreateStage' | 'willCreateWorkflow' | 'willDeleteEntryFromList' | 'willDeleteFieldOfContentType' | 'willDuplicateRole' | 'willEditEditLayout' | 'willEditEmailTemplates' | 'willEditEntryFromButton' | 'willEditEntryFromList' | 'willEditReleaseFromHome' | 'willEditFieldOfContentType' | 'willEditMediaLibraryConfig' | 'willEditNameOfContentType' | 'willEditNameOfSingleType' | 'willEditAuthenticationProvider' | 'willEditFieldNameOnContentType' | 'willEditStage' | 'willFilterEntries' | 'willInstallPlugin' | 'willOpenAuditLogDetailsFromHome' | 'willUnpublishEntry' | 'willSaveComponent' | 'willSaveContentType' | 'willSaveContentTypeLayout' | 'didEditFieldNameOnContentType' | 'didCreateRelease' | 'didLaunchGuidedtour';
|
|
29
|
+
name: 'changeComponentsOrder' | 'didAddComponentToDynamicZone' | 'didBulkDeleteEntries' | 'didNotBulkDeleteEntries' | 'didChangeDisplayedFields' | 'didCheckDraftRelations' | 'didClickGuidedTourHomepageApiTokens' | 'didClickGuidedTourHomepageContentManager' | 'didClickGuidedTourHomepageContentTypeBuilder' | 'didClickGuidedTourStep1CollectionType' | 'didClickGuidedTourStep2ContentManager' | 'didClickGuidedTourStep3ApiTokens' | 'didClickonBlogSection' | 'didClickonCodeExampleSection' | 'didClickonReadTheDocumentationSection' | 'didClickOnTryStrapiCloudSection' | 'didClickonTutorialSection' | 'didCreateGuidedTourCollectionType' | 'didCreateGuidedTourEntry' | 'didCreateNewRole' | 'didCreateRole' | 'didDeleteToken' | 'didDuplicateRole' | 'didEditEditSettings' | 'didEditEmailTemplates' | 'didEditFieldNameOnContentType' | 'didEditListSettings' | 'didEditMediaLibraryConfig' | 'didEditNameOfContentType' | 'didGenerateGuidedTourApiTokens' | 'didGoToMarketplace' | 'didLaunchGuidedtour' | 'didMissMarketplacePlugin' | 'didNotCreateFirstAdmin' | 'didNotSaveComponent' | 'didPluginLearnMore' | 'didBulkPublishEntries' | 'didNotBulkPublishEntries' | 'didUnpublishEntry' | 'didBulkUnpublishEntries' | 'didNotBulkUnpublishEntries' | 'didSaveComponent' | 'didSaveContentType' | 'didSearch' | 'didSkipGuidedtour' | 'didSubmitPlugin' | 'didSubmitProvider' | 'didUpdateConditions' | 'didSelectAllMediaLibraryElements' | 'didSelectContentTypeFieldSettings' | 'didSelectContentTypeSettings' | 'didEditAuthenticationProvider' | 'didRestoreHistoryVersion' | 'hasClickedCTBAddFieldBanner' | 'removeComponentFromDynamicZone' | 'willAddMoreFieldToContentType' | 'willBulkDeleteEntries' | 'willBulkPublishEntries' | 'willBulkUnpublishEntries' | 'willChangeNumberOfEntriesPerPage' | 'willCheckDraftRelations' | 'willCreateComponent' | 'willCreateComponentFromAttributesModal' | 'willCreateContentType' | 'willCreateFirstAdmin' | 'willCreateNewRole' | 'willCreateRole' | 'willCreateSingleType' | 'willCreateStage' | 'willCreateWorkflow' | 'willDeleteEntryFromList' | 'willDeleteFieldOfContentType' | 'willDuplicateRole' | 'willEditEditLayout' | 'willEditEmailTemplates' | 'willEditEntryFromButton' | 'willEditEntryFromList' | 'willEditReleaseFromHome' | 'willEditFieldOfContentType' | 'willEditMediaLibraryConfig' | 'willEditNameOfContentType' | 'willEditNameOfSingleType' | 'willEditAuthenticationProvider' | 'willEditFieldNameOnContentType' | 'willEditStage' | 'willFilterEntries' | 'willInstallPlugin' | 'willOpenAuditLogDetailsFromHome' | 'willUnpublishEntry' | 'willSaveComponent' | 'willSaveContentType' | 'willSaveContentTypeLayout' | 'didEditFieldNameOnContentType' | 'didCreateRelease' | 'didStartNewChat' | 'didLaunchGuidedtour';
|
|
29
30
|
properties?: never;
|
|
30
31
|
}
|
|
31
32
|
interface DidAccessAuthenticatedAdministrationEvent {
|
|
@@ -172,6 +173,24 @@ interface DidPublishRelease {
|
|
|
172
173
|
totalUnpublishedEntries: number;
|
|
173
174
|
};
|
|
174
175
|
}
|
|
176
|
+
interface DidUsePresetPromptEvent {
|
|
177
|
+
name: 'didUsePresetPrompt';
|
|
178
|
+
properties: {
|
|
179
|
+
promptType: 'generate-product-schema' | 'tell-me-about-the-content-type-builder' | 'tell-me-about-strapi';
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
interface DidAnswerMessageEvent {
|
|
183
|
+
name: 'didAnswerMessage';
|
|
184
|
+
properties: {
|
|
185
|
+
successful: boolean;
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
interface DidVoteAnswerEvent {
|
|
189
|
+
name: 'didVoteAnswer';
|
|
190
|
+
properties: {
|
|
191
|
+
value: 'positive' | 'negative';
|
|
192
|
+
};
|
|
193
|
+
}
|
|
175
194
|
interface DidUpdateCTBSchema {
|
|
176
195
|
name: 'didUpdateCTBSchema';
|
|
177
196
|
properties: {
|
|
@@ -224,7 +243,7 @@ interface DidOpenKeyStatisticsWidgetLink {
|
|
|
224
243
|
itemKey: string;
|
|
225
244
|
};
|
|
226
245
|
}
|
|
227
|
-
type EventsWithProperties = CreateEntryEvents | PublishEntryEvents | DidAccessAuthenticatedAdministrationEvent | DidAccessTokenListEvent | DidChangeModeEvent | DidCropFileEvent | DeleteEntryEvents | DidEditMediaLibraryElementsEvent | DidFilterMediaLibraryElementsEvent | DidFilterEntriesEvent | DidSelectContentTypeFieldTypeEvent | DidSelectFile | DidSortMediaLibraryElementsEvent | DidSubmitWithErrorsFirstAdminEvent | LogoEvent | TokenEvents | UpdateEntryEvents | WillModifyTokenEvent | WillNavigateEvent | DidPublishRelease | MediaEvents | DidUpdateCTBSchema | DidSkipGuidedTour | DidCompleteGuidedTour | DidStartGuidedTour | DidOpenHomeWidgetLink | DidOpenKeyStatisticsWidgetLink | WillEditEntryFromHome;
|
|
246
|
+
type EventsWithProperties = CreateEntryEvents | PublishEntryEvents | DidAccessAuthenticatedAdministrationEvent | DidAccessTokenListEvent | DidChangeModeEvent | DidCropFileEvent | DeleteEntryEvents | DidEditMediaLibraryElementsEvent | DidFilterMediaLibraryElementsEvent | DidFilterEntriesEvent | DidSelectContentTypeFieldTypeEvent | DidSelectFile | DidSortMediaLibraryElementsEvent | DidSubmitWithErrorsFirstAdminEvent | DidUsePresetPromptEvent | DidAnswerMessageEvent | DidVoteAnswerEvent | LogoEvent | TokenEvents | UpdateEntryEvents | WillModifyTokenEvent | WillNavigateEvent | DidPublishRelease | MediaEvents | DidUpdateCTBSchema | DidSkipGuidedTour | DidCompleteGuidedTour | DidStartGuidedTour | DidOpenHomeWidgetLink | DidOpenKeyStatisticsWidgetLink | WillEditEntryFromHome;
|
|
228
247
|
export type TrackingEvent = EventWithoutProperties | EventsWithProperties;
|
|
229
248
|
export interface UseTrackingReturn {
|
|
230
249
|
/**
|
|
@@ -50,6 +50,8 @@ export { useClipboard } from './hooks/useClipboard';
|
|
|
50
50
|
export { useElementOnScreen } from './hooks/useElementOnScreen';
|
|
51
51
|
export { useAdminUsers } from './services/users';
|
|
52
52
|
export { useGetCountDocumentsQuery } from './services/homepage';
|
|
53
|
+
/** @internal */
|
|
54
|
+
export { useAIAvailability } from './hooks/useAIAvailability';
|
|
53
55
|
/**
|
|
54
56
|
* Types
|
|
55
57
|
*/
|
|
@@ -78,8 +78,8 @@ interface MarketplaceResponse<TData extends Plugin | Provider> {
|
|
|
78
78
|
declare function useMarketplaceData({ npmPackageType, debouncedSearch, query, tabQuery, strapiVersion, }: UseMarketplaceDataParams): {
|
|
79
79
|
pluginsResponse: MarketplaceResponse<Plugin> | null | undefined;
|
|
80
80
|
providersResponse: MarketplaceResponse<Provider> | undefined;
|
|
81
|
-
pluginsStatus: "
|
|
82
|
-
providersStatus: "
|
|
81
|
+
pluginsStatus: "success" | "loading" | "error" | "idle";
|
|
82
|
+
providersStatus: "success" | "loading" | "error" | "idle";
|
|
83
83
|
possibleCollections: {};
|
|
84
84
|
possibleCategories: {};
|
|
85
85
|
pagination: {
|
|
@@ -15,6 +15,7 @@ declare const useInitQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks
|
|
|
15
15
|
useTypescriptOnServer: boolean;
|
|
16
16
|
useTypescriptOnAdmin: boolean;
|
|
17
17
|
isHostedOnStrapiCloud: boolean;
|
|
18
|
+
aiLicenseKey?: string | undefined;
|
|
18
19
|
numberOfAllContentTypes: number;
|
|
19
20
|
numberOfComponents: number;
|
|
20
21
|
numberOfDynamicZones: number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const GlobalNotifications: () => null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useAIAvailability: () => boolean;
|
|
@@ -14,7 +14,7 @@ declare function useLicenseLimits({ enabled }?: UseLicenseLimitsArgs): {
|
|
|
14
14
|
type: string;
|
|
15
15
|
isTrial: boolean;
|
|
16
16
|
} | undefined;
|
|
17
|
-
getFeature: <T>(name: "review-workflows" | "sso" | "
|
|
17
|
+
getFeature: <T>(name: "review-workflows" | "sso" | "audit-logs" | "cms-content-releases" | "cms-content-history") => Record<string, T> | undefined;
|
|
18
18
|
isError: boolean;
|
|
19
19
|
isLoading: boolean;
|
|
20
20
|
isTrial: boolean;
|
package/dist/ee/admin/src/pages/SettingsPage/pages/ApplicationInfoPage/components/AIUsage.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const AIUsage: () => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GetAiUsage } from '../../../../shared/contracts/ai';
|
|
2
|
+
declare const useGetAIUsageQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("src").QueryArguments, unknown, import("src").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics", GetAiUsage.Response, "adminApi">>, useGetAiTokenQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("src").QueryArguments, unknown, import("src").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics", {
|
|
3
|
+
token: string;
|
|
4
|
+
expiresAt?: string | undefined;
|
|
5
|
+
}, "adminApi">>, useLazyGetAiTokenQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseLazyQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("src").QueryArguments, unknown, import("src").BaseQueryError>, "GuidedTourMeta" | "HomepageKeyStatistics", {
|
|
6
|
+
token: string;
|
|
7
|
+
expiresAt?: string | undefined;
|
|
8
|
+
}, "adminApi">>;
|
|
9
|
+
export { useGetAIUsageQuery, useGetAiTokenQuery, useLazyGetAiTokenQuery };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../../../../../ee/server/src/ai/controllers/ai.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;oBAQX,OAAO;oBA+IP,OAAO;;AAhJ/B,wBA2QE"}
|