@strapi/admin 4.15.5-alpha.3 → 4.15.5-alpha.4
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/_chunks/{AuthenticatedApp-79e3f141.js → AuthenticatedApp-31e6418d.js} +21 -21
- package/dist/_chunks/{AuthenticatedApp-79e3f141.js.map → AuthenticatedApp-31e6418d.js.map} +1 -1
- package/dist/_chunks/{AuthenticatedApp-2cfb41e2.mjs → AuthenticatedApp-52d37e32.mjs} +21 -21
- package/dist/_chunks/{AuthenticatedApp-2cfb41e2.mjs.map → AuthenticatedApp-52d37e32.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-a617d19a.js → HomePage-0f953b49.js} +4 -4
- package/dist/_chunks/{HomePage-a617d19a.js.map → HomePage-0f953b49.js.map} +1 -1
- package/dist/_chunks/{HomePage-1376624b.mjs → HomePage-1e7b2e66.mjs} +4 -4
- package/dist/_chunks/{HomePage-1376624b.mjs.map → HomePage-1e7b2e66.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-e333ff90.mjs → HomePage-a2c12504.mjs} +4 -4
- package/dist/_chunks/{HomePage-e333ff90.mjs.map → HomePage-a2c12504.mjs.map} +1 -1
- package/dist/_chunks/{HomePage-a9e9942a.js → HomePage-d0f7fc69.js} +4 -4
- package/dist/_chunks/{HomePage-a9e9942a.js.map → HomePage-d0f7fc69.js.map} +1 -1
- package/dist/_chunks/{InstalledPluginsPage-c7ccd2b2.mjs → InstalledPluginsPage-3fc71003.mjs} +3 -3
- package/dist/_chunks/{InstalledPluginsPage-c7ccd2b2.mjs.map → InstalledPluginsPage-3fc71003.mjs.map} +1 -1
- package/dist/_chunks/{InstalledPluginsPage-fb2aaa1f.js → InstalledPluginsPage-46e14507.js} +3 -3
- package/dist/_chunks/{InstalledPluginsPage-fb2aaa1f.js.map → InstalledPluginsPage-46e14507.js.map} +1 -1
- package/dist/_chunks/{Login-d6fd38ea.js → Login-550366a9.js} +2 -2
- package/dist/_chunks/{Login-d6fd38ea.js.map → Login-550366a9.js.map} +1 -1
- package/dist/_chunks/{Login-69bf063c.mjs → Login-57e0fd9c.mjs} +2 -2
- package/dist/_chunks/{Login-69bf063c.mjs.map → Login-57e0fd9c.mjs.map} +1 -1
- package/dist/_chunks/{MarketplacePage-7c516084.js → MarketplacePage-138e7b39.js} +3 -3
- package/dist/_chunks/{MarketplacePage-7c516084.js.map → MarketplacePage-138e7b39.js.map} +1 -1
- package/dist/_chunks/{MarketplacePage-c829d0de.mjs → MarketplacePage-2505749a.mjs} +3 -3
- package/dist/_chunks/{MarketplacePage-c829d0de.mjs.map → MarketplacePage-2505749a.mjs.map} +1 -1
- package/dist/_chunks/{ProfilePage-a2e54283.js → ProfilePage-23b8a29f.js} +3 -3
- package/dist/_chunks/{ProfilePage-a2e54283.js.map → ProfilePage-23b8a29f.js.map} +1 -1
- package/dist/_chunks/{ProfilePage-c6d8c69f.mjs → ProfilePage-bd50b4f3.mjs} +3 -3
- package/dist/_chunks/{ProfilePage-c6d8c69f.mjs.map → ProfilePage-bd50b4f3.mjs.map} +1 -1
- package/dist/_chunks/{build-20299009.mjs → build-92e15b93.mjs} +13 -13
- package/dist/_chunks/{build-20299009.mjs.map → build-92e15b93.mjs.map} +1 -1
- package/dist/_chunks/{build-58827c7a.js → build-df2f219f.js} +13 -13
- package/dist/_chunks/{build-58827c7a.js.map → build-df2f219f.js.map} +1 -1
- package/dist/_chunks/{constants-a16f9961.js → constants-06897e38.js} +2 -2
- package/dist/_chunks/{constants-a16f9961.js.map → constants-06897e38.js.map} +1 -1
- package/dist/_chunks/{constants-842c6449.mjs → constants-362e760f.mjs} +6 -6
- package/dist/_chunks/{constants-842c6449.mjs.map → constants-362e760f.mjs.map} +1 -1
- package/dist/_chunks/{constants-9212941b.js → constants-4539f7ac.js} +6 -6
- package/dist/_chunks/{constants-9212941b.js.map → constants-4539f7ac.js.map} +1 -1
- package/dist/_chunks/{constants-a3372db6.mjs → constants-59bcff2e.mjs} +3 -3
- package/dist/_chunks/{constants-a3372db6.mjs.map → constants-59bcff2e.mjs.map} +1 -1
- package/dist/_chunks/{constants-fad06b7f.mjs → constants-6dcb43aa.mjs} +2 -2
- package/dist/_chunks/{constants-fad06b7f.mjs.map → constants-6dcb43aa.mjs.map} +1 -1
- package/dist/_chunks/{constants-4c06740e.js → constants-88f9d2a0.js} +3 -3
- package/dist/_chunks/{constants-4c06740e.js.map → constants-88f9d2a0.js.map} +1 -1
- package/dist/_chunks/{constants-962e9922.js → constants-ac7899ed.js} +5 -5
- package/dist/_chunks/{constants-962e9922.js.map → constants-ac7899ed.js.map} +1 -1
- package/dist/_chunks/{constants-5f0670d7.mjs → constants-e2c67ec8.mjs} +5 -5
- package/dist/_chunks/{constants-5f0670d7.mjs.map → constants-e2c67ec8.mjs.map} +1 -1
- package/dist/_chunks/{develop-a7d5cf0c.js → develop-4d25a6e0.js} +13 -13
- package/dist/_chunks/{develop-a7d5cf0c.js.map → develop-4d25a6e0.js.map} +1 -1
- package/dist/_chunks/{develop-7066af5e.mjs → develop-a46fed01.mjs} +13 -13
- package/dist/_chunks/{develop-7066af5e.mjs.map → develop-a46fed01.mjs.map} +1 -1
- package/dist/_chunks/{index-2b331655.js → index-02064a74.js} +3 -3
- package/dist/_chunks/{index-2b331655.js.map → index-02064a74.js.map} +1 -1
- package/dist/_chunks/{index-dede2234.mjs → index-03e8b9e3.mjs} +3 -3
- package/dist/_chunks/{index-dede2234.mjs.map → index-03e8b9e3.mjs.map} +1 -1
- package/dist/_chunks/{index-ea8946fb.js → index-074a5de8.js} +2 -2
- package/dist/_chunks/{index-ea8946fb.js.map → index-074a5de8.js.map} +1 -1
- package/dist/_chunks/{index-c4116296.mjs → index-0778959c.mjs} +6 -6
- package/dist/_chunks/{index-c4116296.mjs.map → index-0778959c.mjs.map} +1 -1
- package/dist/_chunks/{index-e8b17b94.js → index-0b787ac1.js} +5 -5
- package/dist/_chunks/{index-e8b17b94.js.map → index-0b787ac1.js.map} +1 -1
- package/dist/_chunks/{index-3444ab6f.js → index-133699a3.js} +4 -4
- package/dist/_chunks/{index-3444ab6f.js.map → index-133699a3.js.map} +1 -1
- package/dist/_chunks/{index-7d449292.mjs → index-13ab14ec.mjs} +3 -3
- package/dist/_chunks/{index-7d449292.mjs.map → index-13ab14ec.mjs.map} +1 -1
- package/dist/_chunks/{index-d4029932.js → index-148939b0.js} +4 -4
- package/dist/_chunks/{index-d4029932.js.map → index-148939b0.js.map} +1 -1
- package/dist/_chunks/{index-edf62e62.mjs → index-15c76f0b.mjs} +4 -4
- package/dist/_chunks/{index-edf62e62.mjs.map → index-15c76f0b.mjs.map} +1 -1
- package/dist/_chunks/{index-07d155a0.js → index-19b1984d.js} +2 -2
- package/dist/_chunks/{index-07d155a0.js.map → index-19b1984d.js.map} +1 -1
- package/dist/_chunks/{index-cf4fe6b7.mjs → index-1a3e997a.mjs} +8 -8
- package/dist/_chunks/{index-cf4fe6b7.mjs.map → index-1a3e997a.mjs.map} +1 -1
- package/dist/_chunks/{index-b84b9fee.js → index-1a74fa41.js} +348 -302
- package/dist/_chunks/index-1a74fa41.js.map +1 -0
- package/dist/_chunks/{index-ed287ba8.mjs → index-1a7cc203.mjs} +3 -3
- package/dist/_chunks/{index-ed287ba8.mjs.map → index-1a7cc203.mjs.map} +1 -1
- package/dist/_chunks/{index-61c915cd.mjs → index-23925f10.mjs} +2 -2
- package/dist/_chunks/{index-61c915cd.mjs.map → index-23925f10.mjs.map} +1 -1
- package/dist/_chunks/{index-341222f2.js → index-24b626a6.js} +3 -3
- package/dist/_chunks/{index-341222f2.js.map → index-24b626a6.js.map} +1 -1
- package/dist/_chunks/{index-693383db.mjs → index-2b48526d.mjs} +5 -5
- package/dist/_chunks/{index-693383db.mjs.map → index-2b48526d.mjs.map} +1 -1
- package/dist/_chunks/{index-c2b86584.js → index-2c76e5e2.js} +3 -3
- package/dist/_chunks/{index-c2b86584.js.map → index-2c76e5e2.js.map} +1 -1
- package/dist/_chunks/{index-4c29f67c.js → index-36a7c525.js} +3 -3
- package/dist/_chunks/{index-4c29f67c.js.map → index-36a7c525.js.map} +1 -1
- package/dist/_chunks/{index-996f7ad1.mjs → index-3a96c79f.mjs} +3 -3
- package/dist/_chunks/{index-996f7ad1.mjs.map → index-3a96c79f.mjs.map} +1 -1
- package/dist/_chunks/{index-9f88ad83.mjs → index-3be46ca9.mjs} +3 -3
- package/dist/_chunks/{index-9f88ad83.mjs.map → index-3be46ca9.mjs.map} +1 -1
- package/dist/_chunks/{index-45a78b18.mjs → index-4544af4c.mjs} +20 -20
- package/dist/_chunks/{index-45a78b18.mjs.map → index-4544af4c.mjs.map} +1 -1
- package/dist/_chunks/{index-25c9158f.js → index-4b8c01d4.js} +2 -2
- package/dist/_chunks/{index-25c9158f.js.map → index-4b8c01d4.js.map} +1 -1
- package/dist/_chunks/{index-242c514c.mjs → index-4fef292a.mjs} +3 -3
- package/dist/_chunks/{index-242c514c.mjs.map → index-4fef292a.mjs.map} +1 -1
- package/dist/_chunks/{index-adb714e8.mjs → index-5113c6be.mjs} +2 -2
- package/dist/_chunks/{index-adb714e8.mjs.map → index-5113c6be.mjs.map} +1 -1
- package/dist/_chunks/{index-2aed5618.js → index-58ffc071.js} +3 -3
- package/dist/_chunks/{index-2aed5618.js.map → index-58ffc071.js.map} +1 -1
- package/dist/_chunks/{index-517fbe00.mjs → index-59880344.mjs} +5 -5
- package/dist/_chunks/{index-517fbe00.mjs.map → index-59880344.mjs.map} +1 -1
- package/dist/_chunks/{index-68ae52b6.js → index-5c19f439.js} +5 -5
- package/dist/_chunks/{index-68ae52b6.js.map → index-5c19f439.js.map} +1 -1
- package/dist/_chunks/{index-b53ba38d.mjs → index-610889c4.mjs} +4 -4
- package/dist/_chunks/{index-b53ba38d.mjs.map → index-610889c4.mjs.map} +1 -1
- package/dist/_chunks/{index-4a241498.js → index-628c5937.js} +8 -8
- package/dist/_chunks/{index-4a241498.js.map → index-628c5937.js.map} +1 -1
- package/dist/_chunks/{index-f088fe2c.js → index-64a156de.js} +3 -3
- package/dist/_chunks/{index-f088fe2c.js.map → index-64a156de.js.map} +1 -1
- package/dist/_chunks/{index-7a1a0c5c.mjs → index-67a35378.mjs} +3 -3
- package/dist/_chunks/{index-7a1a0c5c.mjs.map → index-67a35378.mjs.map} +1 -1
- package/dist/_chunks/{index-174cc6b9.js → index-6b1148f6.js} +4 -4
- package/dist/_chunks/{index-174cc6b9.js.map → index-6b1148f6.js.map} +1 -1
- package/dist/_chunks/{index-ecb3cfba.js → index-6db2b431.js} +5 -5
- package/dist/_chunks/{index-ecb3cfba.js.map → index-6db2b431.js.map} +1 -1
- package/dist/_chunks/{index-dcd31235.js → index-6e44aef9.js} +3 -3
- package/dist/_chunks/{index-dcd31235.js.map → index-6e44aef9.js.map} +1 -1
- package/dist/_chunks/{index-9b3107a4.mjs → index-70189e76.mjs} +3 -3
- package/dist/_chunks/{index-9b3107a4.mjs.map → index-70189e76.mjs.map} +1 -1
- package/dist/_chunks/{index-563a992a.js → index-86172b2d.js} +4 -4
- package/dist/_chunks/{index-563a992a.js.map → index-86172b2d.js.map} +1 -1
- package/dist/_chunks/{index-35fc9959.js → index-898ba1c6.js} +3 -3
- package/dist/_chunks/{index-35fc9959.js.map → index-898ba1c6.js.map} +1 -1
- package/dist/_chunks/{index-dfc0437b.mjs → index-8bca9e4c.mjs} +4 -4
- package/dist/_chunks/{index-dfc0437b.mjs.map → index-8bca9e4c.mjs.map} +1 -1
- package/dist/_chunks/{index-12b7d75f.js → index-8cafda81.js} +4 -4
- package/dist/_chunks/{index-12b7d75f.js.map → index-8cafda81.js.map} +1 -1
- package/dist/_chunks/{index-48ebb88c.js → index-9195720c.js} +5 -5
- package/dist/_chunks/{index-48ebb88c.js.map → index-9195720c.js.map} +1 -1
- package/dist/_chunks/{index-dcbab202.mjs → index-91ef29b3.mjs} +3 -3
- package/dist/_chunks/{index-dcbab202.mjs.map → index-91ef29b3.mjs.map} +1 -1
- package/dist/_chunks/{index-5b44cba5.mjs → index-994d2c5d.mjs} +2 -2
- package/dist/_chunks/{index-5b44cba5.mjs.map → index-994d2c5d.mjs.map} +1 -1
- package/dist/_chunks/{index-66177bc5.js → index-9deb8ccb.js} +4 -4
- package/dist/_chunks/{index-66177bc5.js.map → index-9deb8ccb.js.map} +1 -1
- package/dist/_chunks/{index-9e5d59f5.mjs → index-9eb4c34d.mjs} +5 -5
- package/dist/_chunks/{index-9e5d59f5.mjs.map → index-9eb4c34d.mjs.map} +1 -1
- package/dist/_chunks/{index-80574f48.mjs → index-9f8605e5.mjs} +3 -3
- package/dist/_chunks/{index-80574f48.mjs.map → index-9f8605e5.mjs.map} +1 -1
- package/dist/_chunks/{index-9d03d359.js → index-a0af8beb.js} +3 -3
- package/dist/_chunks/{index-9d03d359.js.map → index-a0af8beb.js.map} +1 -1
- package/dist/_chunks/{index-314f72f4.mjs → index-aceb13c1.mjs} +4 -4
- package/dist/_chunks/{index-314f72f4.mjs.map → index-aceb13c1.mjs.map} +1 -1
- package/dist/_chunks/{index-c3469f69.js → index-aee95cda.js} +3 -3
- package/dist/_chunks/{index-c3469f69.js.map → index-aee95cda.js.map} +1 -1
- package/dist/_chunks/{index-9910aa5a.mjs → index-b17c7874.mjs} +3 -3
- package/dist/_chunks/{index-9910aa5a.mjs.map → index-b17c7874.mjs.map} +1 -1
- package/dist/_chunks/{index-f097ccea.mjs → index-bb22dbbc.mjs} +3 -3
- package/dist/_chunks/{index-f097ccea.mjs.map → index-bb22dbbc.mjs.map} +1 -1
- package/dist/_chunks/{index-fc7a00f0.js → index-be02d51c.js} +20 -20
- package/dist/_chunks/{index-fc7a00f0.js.map → index-be02d51c.js.map} +1 -1
- package/dist/_chunks/{index-252284ed.js → index-be8eb534.js} +3 -3
- package/dist/_chunks/{index-252284ed.js.map → index-be8eb534.js.map} +1 -1
- package/dist/_chunks/{index-18fed2cd.js → index-c36d6802.js} +3 -3
- package/dist/_chunks/{index-18fed2cd.js.map → index-c36d6802.js.map} +1 -1
- package/dist/_chunks/{index-1316edb2.mjs → index-c45d5f19.mjs} +4 -4
- package/dist/_chunks/{index-1316edb2.mjs.map → index-c45d5f19.mjs.map} +1 -1
- package/dist/_chunks/{index-6b7dceb1.mjs → index-c59a117e.mjs} +3 -3
- package/dist/_chunks/{index-6b7dceb1.mjs.map → index-c59a117e.mjs.map} +1 -1
- package/dist/_chunks/{index-df70cfd7.mjs → index-c9e68296.mjs} +5 -5
- package/dist/_chunks/{index-df70cfd7.mjs.map → index-c9e68296.mjs.map} +1 -1
- package/dist/_chunks/{index-25bb4a4d.js → index-cd6b99a8.js} +5 -5
- package/dist/_chunks/{index-25bb4a4d.js.map → index-cd6b99a8.js.map} +1 -1
- package/dist/_chunks/{index-bef99193.mjs → index-ce41b6f0.mjs} +4 -4
- package/dist/_chunks/{index-bef99193.mjs.map → index-ce41b6f0.mjs.map} +1 -1
- package/dist/_chunks/{index-25feef65.js → index-d3dea80c.js} +6 -6
- package/dist/_chunks/{index-25feef65.js.map → index-d3dea80c.js.map} +1 -1
- package/dist/_chunks/{index-ef0c2ffb.js → index-d63b0b91.js} +4 -4
- package/dist/_chunks/{index-ef0c2ffb.js.map → index-d63b0b91.js.map} +1 -1
- package/dist/_chunks/{index-1e3a2719.mjs → index-dc4938ad.mjs} +5 -5
- package/dist/_chunks/{index-1e3a2719.mjs.map → index-dc4938ad.mjs.map} +1 -1
- package/dist/_chunks/{index-b53cf07d.mjs → index-dc89c18c.mjs} +340 -294
- package/dist/_chunks/index-dc89c18c.mjs.map +1 -0
- package/dist/_chunks/{index-61e392e8.mjs → index-ea43b165.mjs} +5 -5
- package/dist/_chunks/{index-61e392e8.mjs.map → index-ea43b165.mjs.map} +1 -1
- package/dist/_chunks/{index-fbe9dba1.js → index-eb59cabf.js} +3 -3
- package/dist/_chunks/{index-fbe9dba1.js.map → index-eb59cabf.js.map} +1 -1
- package/dist/_chunks/{index-703c58c8.mjs → index-fae4b277.mjs} +4 -4
- package/dist/_chunks/{index-703c58c8.mjs.map → index-fae4b277.mjs.map} +1 -1
- package/dist/_chunks/{index-7338912f.js → index-ff9d30ef.js} +5 -5
- package/dist/_chunks/{index-7338912f.js.map → index-ff9d30ef.js.map} +1 -1
- package/dist/_chunks/{schema-1808aa2d.mjs → schema-549f8236.mjs} +2 -2
- package/dist/_chunks/{schema-1808aa2d.mjs.map → schema-549f8236.mjs.map} +1 -1
- package/dist/_chunks/{schema-e73a6250.js → schema-e3080441.js} +2 -2
- package/dist/_chunks/{schema-e73a6250.js.map → schema-e3080441.js.map} +1 -1
- package/dist/_chunks/{validateWorkflow-1ec1040b.mjs → validateWorkflow-7bff41ac.mjs} +3 -3
- package/dist/_chunks/{validateWorkflow-1ec1040b.mjs.map → validateWorkflow-7bff41ac.mjs.map} +1 -1
- package/dist/_chunks/{validateWorkflow-11ecf8ee.js → validateWorkflow-a7311af1.js} +3 -3
- package/dist/_chunks/{validateWorkflow-11ecf8ee.js.map → validateWorkflow-a7311af1.js.map} +1 -1
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/cli.js +12 -12
- package/dist/cli.mjs +12 -12
- package/package.json +12 -12
- package/dist/_chunks/index-b53cf07d.mjs.map +0 -1
- package/dist/_chunks/index-b84b9fee.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProfilePage-c6d8c69f.mjs","sources":["../../admin/src/pages/ProfilePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n ContentLayout,\n Flex,\n HeaderLayout,\n Main,\n useNotifyAT,\n Grid,\n GridItem,\n Typography,\n SingleSelect,\n SingleSelectOption,\n TextInput,\n FieldAction,\n} from '@strapi/design-system';\nimport {\n auth,\n Form,\n GenericInput,\n GenericInputProps,\n LoadingIndicatorPage,\n pxToRem,\n useAppInfo,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useOverlayBlocker,\n useTracking,\n} from '@strapi/helper-plugin';\nimport { Check, Eye, EyeStriked } from '@strapi/icons';\nimport { AxiosError } from 'axios';\nimport { Formik, FormikHelpers } from 'formik';\nimport upperFirst from 'lodash/upperFirst';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\nimport styled from 'styled-components';\nimport * as yup from 'yup';\n\nimport { useLocales } from '../components/LanguageProvider';\nimport { useThemeToggle, ThemeName, ThemeToggleContextContextValue } from '../contexts/themeToggle';\nimport { getFullName } from '../utils/getFullName';\n\n// @ts-expect-error – no types available\nimport { profileValidation } from './SettingsPage/pages/Users/utils/validations/users';\n\nimport type { IsSSOLocked } from '../../../shared/contracts/providers';\nimport type { GetMe, UpdateMe } from '../../../shared/contracts/users';\n\nconst schema = yup.object().shape(profileValidation);\n\n/* -------------------------------------------------------------------------------------------------\n * ProfilePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProfilePage = () => {\n const { changeLocale, localeNames } = useLocales();\n const { setUserDisplayName } = useAppInfo();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const toggleNotification = useNotification();\n const { lockApp, unlockApp } = useOverlayBlocker();\n const { notifyStatus } = useNotifyAT();\n const { currentTheme, themes: allApplicationThemes, onChangeTheme } = useThemeToggle();\n const { get, put } = useFetchClient();\n\n useFocusWhenNavigate();\n\n const {\n isLoading: isLoadingUser,\n data,\n refetch,\n } = useQuery(\n 'user',\n async () => {\n const { data } = await get<GetMe.Response>('/admin/users/me');\n\n return data.data;\n },\n {\n onSuccess() {\n notifyStatus(\n formatMessage({\n id: 'Settings.profile.form.notify.data.loaded',\n defaultMessage: 'Your profile data has been loaded',\n })\n );\n },\n onError() {\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n },\n }\n );\n\n const { isLoading: isLoadingSSO, data: dataSSO } = useQuery(\n ['providers', 'isSSOLocked'],\n async () => {\n const {\n data: { data },\n } = await get<IsSSOLocked.Response>('/admin/providers/isSSOLocked');\n\n return data;\n },\n {\n enabled: window.strapi.isEE && window.strapi.features.isEnabled('sso'),\n onError() {\n toggleNotification({\n type: 'warning',\n message: { id: 'Settings.permissions.users.sso.provider.error' },\n });\n },\n }\n );\n\n const isLoading = isLoadingUser || isLoadingSSO;\n\n type UpdateUsersMeBody = UpdateMe.Request['body'] & {\n confirmPassword: string;\n currentTheme: ThemeName;\n };\n\n const submitMutation = useMutation<\n UpdateMe.Response['data'] & { currentTheme: ThemeName },\n AxiosError<UpdateMe.Response>,\n UpdateUsersMeBody\n >(\n async (body) => {\n const { confirmPassword: _confirmPassword, currentTheme, ...bodyRest } = body;\n let dataToSend = bodyRest;\n\n const isPasswordRequestBody = (\n data: UpdateMe.Request['body']\n ): data is UpdateMe.PasswordRequestBody => {\n return 'password' in data;\n };\n\n // The password fields are optional. If the user didn't touch them, don't send any password\n // to the API, because an empty string would throw a validation error\n if (isPasswordRequestBody(dataToSend) && dataToSend.password === '') {\n const {\n password: _password,\n currentPassword: _currentPassword,\n ...passwordRequestBodyRest\n } = dataToSend;\n dataToSend = passwordRequestBodyRest;\n }\n\n const { data } = await put<UpdateMe.Response>('/admin/users/me', dataToSend);\n\n return { ...data.data, currentTheme };\n },\n {\n async onSuccess(data) {\n await refetch();\n const { email, firstname, lastname, username, preferedLanguage } = data;\n auth.setUserInfo({ email, firstname, lastname, username, preferedLanguage });\n const userDisplayName = data.username || getFullName(data.firstname ?? '', data.lastname);\n setUserDisplayName(userDisplayName);\n\n if (data.preferedLanguage) {\n changeLocale(data.preferedLanguage);\n }\n\n // @ts-expect-error – we're going to implement a context assertion to avoid this\n onChangeTheme(data.currentTheme);\n\n trackUsage('didChangeMode', { newMode: data.currentTheme });\n\n toggleNotification({\n type: 'success',\n message: { id: 'notification.success.saved', defaultMessage: 'Saved' },\n });\n },\n async onSettled() {\n // @ts-expect-error – we're going to implement a context assertion to avoid this\n unlockApp();\n },\n }\n );\n\n const { isLoading: isSubmittingForm } = submitMutation;\n\n const handleSubmit = async (\n body: UpdateUsersMeBody,\n { setErrors }: FormikHelpers<UpdateUsersMeBody>\n ) => {\n // @ts-expect-error – we're going to implement a context assertion to avoid this\n lockApp();\n\n const username = body.username;\n submitMutation.mutate(\n { ...body, username },\n {\n onError(error) {\n const res = error?.response?.data;\n\n if (res?.data) {\n return setErrors(res.data);\n }\n\n return toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n },\n }\n );\n };\n\n if (isLoading || !data) {\n return (\n <Main aria-busy=\"true\">\n <Helmet\n title={formatMessage({\n id: 'Settings.profile.form.section.helmet.title',\n defaultMessage: 'User profile',\n })}\n />\n <HeaderLayout\n title={formatMessage({\n id: 'Settings.profile.form.section.profile.page.title',\n defaultMessage: 'Profile page',\n })}\n />\n <ContentLayout>\n <LoadingIndicatorPage />\n </ContentLayout>\n </Main>\n );\n }\n\n const hasLockedRole = dataSSO?.isSSOLocked ?? false;\n const { email, firstname, lastname, username, preferedLanguage } = data;\n const initialData = {\n email,\n firstname,\n lastname,\n username,\n preferedLanguage,\n currentTheme,\n confirmPassword: '',\n password: '',\n };\n\n return (\n <Main aria-busy={isSubmittingForm}>\n <Helmet\n title={formatMessage({\n id: 'Settings.profile.form.section.helmet.title',\n defaultMessage: 'User profile',\n })}\n />\n <Formik\n onSubmit={handleSubmit}\n // @ts-expect-error – currentTheme could be undefined because we don't have context assertion yet.\n initialValues={initialData}\n validateOnChange={false}\n validationSchema={schema}\n enableReinitialize\n >\n {({\n errors,\n values: {\n email,\n firstname,\n lastname,\n username,\n preferedLanguage,\n currentTheme,\n ...passwordValues\n },\n handleChange,\n isSubmitting,\n dirty,\n }) => {\n return (\n <Form>\n <HeaderLayout\n title={data.username || getFullName(data.firstname ?? '', data.lastname)}\n primaryAction={\n <Button\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n disabled={!dirty}\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n />\n <Box paddingBottom={10}>\n <ContentLayout>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <UserInfoSection\n errors={errors}\n onChange={handleChange}\n values={{\n firstname,\n lastname,\n username,\n email,\n }}\n />\n {!hasLockedRole && (\n <PasswordSection\n errors={errors}\n onChange={handleChange}\n values={passwordValues}\n />\n )}\n <PreferencesSection\n allApplicationThemes={allApplicationThemes}\n onChange={handleChange}\n values={{\n preferedLanguage,\n currentTheme,\n }}\n localeNames={localeNames}\n />\n </Flex>\n </ContentLayout>\n </Box>\n </Form>\n );\n }}\n </Formik>\n </Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * PasswordSection\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PasswordSectionProps {\n errors: { currentPassword?: string; password?: string; confirmPassword?: string };\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n values: {\n currentPassword?: string;\n password?: string;\n confirmPassword?: string;\n };\n}\n\nconst PasswordSection = ({ errors, onChange, values }: PasswordSectionProps) => {\n const { formatMessage } = useIntl();\n const [currentPasswordShown, setCurrentPasswordShown] = React.useState(false);\n const [passwordShown, setPasswordShown] = React.useState(false);\n const [passwordConfirmShown, setPasswordConfirmShown] = React.useState(false);\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'global.change-password',\n defaultMessage: 'Change password',\n })}\n </Typography>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <TextInput\n error={\n errors.currentPassword\n ? formatMessage({\n id: errors.currentPassword,\n defaultMessage: errors.currentPassword,\n })\n : ''\n }\n onChange={onChange}\n value={values.currentPassword}\n label={formatMessage({\n id: 'Auth.form.currentPassword.label',\n defaultMessage: 'Current Password',\n })}\n name=\"currentPassword\"\n type={currentPasswordShown ? 'text' : 'password'}\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setCurrentPasswordShown((prev) => !prev);\n }}\n label={formatMessage(\n currentPasswordShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {currentPasswordShown ? <Eye /> : <EyeStriked />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n </Grid>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <PasswordInput\n error={\n errors.password\n ? formatMessage({\n id: errors.password,\n defaultMessage: errors.password,\n })\n : ''\n }\n onChange={onChange}\n value={values.password}\n label={formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n })}\n name=\"password\"\n type={passwordShown ? 'text' : 'password'}\n autoComplete=\"new-password\"\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setPasswordShown((prev) => !prev);\n }}\n label={formatMessage(\n passwordShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {passwordShown ? <Eye /> : <EyeStriked />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <PasswordInput\n error={\n errors.confirmPassword\n ? formatMessage({\n id: errors.confirmPassword,\n defaultMessage: errors.confirmPassword,\n })\n : ''\n }\n onChange={onChange}\n value={values.confirmPassword}\n label={formatMessage({\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Confirm Password',\n })}\n name=\"confirmPassword\"\n type={passwordConfirmShown ? 'text' : 'password'}\n autoComplete=\"new-password\"\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setPasswordConfirmShown((prev) => !prev);\n }}\n label={formatMessage(\n passwordConfirmShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {passwordConfirmShown ? <Eye /> : <EyeStriked />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n </Grid>\n </Flex>\n </Box>\n );\n};\n\nconst PasswordInput = styled(TextInput)`\n ::-ms-reveal {\n display: none;\n }\n`;\n\n// Wrapper of the Eye Icon able to show or hide the Password inside the field\nconst FieldActionWrapper = styled(FieldAction)`\n svg {\n height: ${pxToRem(16)};\n width: ${pxToRem(16)};\n path {\n fill: ${({ theme }) => theme.colors.neutral600};\n }\n }\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * PreferencesSection\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PreferencesSectionProps extends Pick<GenericInputProps, 'onChange'> {\n values: {\n preferedLanguage?: string;\n currentTheme?: string;\n };\n localeNames: Record<string, string>;\n allApplicationThemes?: Partial<ThemeToggleContextContextValue['themes']>;\n}\n\nconst PreferencesSection = ({\n onChange,\n values,\n localeNames,\n allApplicationThemes = {},\n}: PreferencesSectionProps) => {\n const { formatMessage } = useIntl();\n const themesToDisplay = Object.keys(allApplicationThemes).filter(\n (themeName) => allApplicationThemes[themeName as keyof ThemeToggleContextContextValue['themes']]\n );\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'Settings.profile.form.section.experience.title',\n defaultMessage: 'Experience',\n })}\n </Typography>\n <Typography>\n {formatMessage(\n {\n id: 'Settings.profile.form.section.experience.interfaceLanguageHelp',\n defaultMessage:\n 'Preference changes will apply only to you. More information is available {here}.',\n },\n {\n here: (\n <Box\n as=\"a\"\n color=\"primary600\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href=\"https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#locales\"\n >\n {formatMessage({\n id: 'Settings.profile.form.section.experience.here',\n defaultMessage: 'here',\n })}\n </Box>\n ),\n }\n )}\n </Typography>\n </Flex>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <SingleSelect\n label={formatMessage({\n id: 'Settings.profile.form.section.experience.interfaceLanguage',\n defaultMessage: 'Interface language',\n })}\n placeholder={formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })}\n hint={formatMessage({\n id: 'Settings.profile.form.section.experience.interfaceLanguage.hint',\n defaultMessage: 'This will only display your own interface in the chosen language.',\n })}\n onClear={() => {\n onChange({\n target: { name: 'preferedLanguage', value: null },\n });\n }}\n clearLabel={formatMessage({\n id: 'Settings.profile.form.section.experience.clear.select',\n defaultMessage: 'Clear the interface language selected',\n })}\n value={values.preferedLanguage}\n onChange={(e) => {\n onChange({\n target: { name: 'preferedLanguage', value: e },\n });\n }}\n >\n {Object.entries(localeNames).map(([language, langName]) => (\n <SingleSelectOption value={language} key={language}>\n {langName}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </GridItem>\n <GridItem s={12} col={6}>\n <SingleSelect\n label={formatMessage({\n id: 'Settings.profile.form.section.experience.mode.label',\n defaultMessage: 'Interface mode',\n })}\n placeholder={formatMessage({\n id: 'components.Select.placeholder',\n defaultMessage: 'Select',\n })}\n hint={formatMessage({\n id: 'Settings.profile.form.section.experience.mode.hint',\n defaultMessage: 'Displays your interface in the chosen mode.',\n })}\n value={values.currentTheme}\n onChange={(e) => {\n onChange({\n target: { name: 'currentTheme', value: e },\n });\n }}\n >\n <SingleSelectOption value=\"system\">\n {formatMessage({\n id: 'Settings.profile.form.section.experience.mode.option-system-label',\n defaultMessage: 'Use system settings',\n })}\n </SingleSelectOption>\n {themesToDisplay.map((theme) => (\n <SingleSelectOption value={theme} key={theme}>\n {formatMessage(\n {\n id: 'Settings.profile.form.section.experience.mode.option-label',\n defaultMessage: '{name} mode',\n },\n {\n name: formatMessage({\n id: theme,\n defaultMessage: upperFirst(theme),\n }),\n }\n )}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </GridItem>\n </Grid>\n </Flex>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * UserInfoSection\n * -----------------------------------------------------------------------------------------------*/\n\ninterface UserInfoSectionProps extends Pick<GenericInputProps, 'onChange'> {\n errors: { firstname?: string; lastname?: string; username?: string; email?: string };\n values: {\n firstname?: string;\n lastname?: string;\n username?: string;\n email?: string;\n };\n}\n\nconst UserInfoSection = ({ errors, onChange, values }: UserInfoSectionProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'global.profile',\n defaultMessage: 'Profile',\n })}\n </Typography>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n }}\n error={errors.firstname}\n onChange={onChange}\n value={values.firstname}\n type=\"text\"\n name=\"firstname\"\n required\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n }}\n error={errors.lastname}\n onChange={onChange}\n value={values.lastname}\n type=\"text\"\n name=\"lastname\"\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{ id: 'Auth.form.email.label', defaultMessage: 'Email' }}\n error={errors.email}\n onChange={onChange}\n value={values.email}\n type=\"email\"\n name=\"email\"\n required\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n }}\n error={errors.username}\n onChange={onChange}\n value={values.username}\n type=\"text\"\n name=\"username\"\n />\n </GridItem>\n </Grid>\n </Flex>\n </Box>\n );\n};\n\nexport { ProfilePage };\n"],"names":["profileValidation","data","currentTheme","email","firstname","lastname","username","preferedLanguage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ProfilePage-bd50b4f3.mjs","sources":["../../admin/src/pages/ProfilePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n ContentLayout,\n Flex,\n HeaderLayout,\n Main,\n useNotifyAT,\n Grid,\n GridItem,\n Typography,\n SingleSelect,\n SingleSelectOption,\n TextInput,\n FieldAction,\n} from '@strapi/design-system';\nimport {\n auth,\n Form,\n GenericInput,\n GenericInputProps,\n LoadingIndicatorPage,\n pxToRem,\n useAppInfo,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n useOverlayBlocker,\n useTracking,\n} from '@strapi/helper-plugin';\nimport { Check, Eye, EyeStriked } from '@strapi/icons';\nimport { AxiosError } from 'axios';\nimport { Formik, FormikHelpers } from 'formik';\nimport upperFirst from 'lodash/upperFirst';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\nimport styled from 'styled-components';\nimport * as yup from 'yup';\n\nimport { useLocales } from '../components/LanguageProvider';\nimport { useThemeToggle, ThemeName, ThemeToggleContextContextValue } from '../contexts/themeToggle';\nimport { getFullName } from '../utils/getFullName';\n\n// @ts-expect-error – no types available\nimport { profileValidation } from './SettingsPage/pages/Users/utils/validations/users';\n\nimport type { IsSSOLocked } from '../../../shared/contracts/providers';\nimport type { GetMe, UpdateMe } from '../../../shared/contracts/users';\n\nconst schema = yup.object().shape(profileValidation);\n\n/* -------------------------------------------------------------------------------------------------\n * ProfilePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProfilePage = () => {\n const { changeLocale, localeNames } = useLocales();\n const { setUserDisplayName } = useAppInfo();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const toggleNotification = useNotification();\n const { lockApp, unlockApp } = useOverlayBlocker();\n const { notifyStatus } = useNotifyAT();\n const { currentTheme, themes: allApplicationThemes, onChangeTheme } = useThemeToggle();\n const { get, put } = useFetchClient();\n\n useFocusWhenNavigate();\n\n const {\n isLoading: isLoadingUser,\n data,\n refetch,\n } = useQuery(\n 'user',\n async () => {\n const { data } = await get<GetMe.Response>('/admin/users/me');\n\n return data.data;\n },\n {\n onSuccess() {\n notifyStatus(\n formatMessage({\n id: 'Settings.profile.form.notify.data.loaded',\n defaultMessage: 'Your profile data has been loaded',\n })\n );\n },\n onError() {\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n },\n }\n );\n\n const { isLoading: isLoadingSSO, data: dataSSO } = useQuery(\n ['providers', 'isSSOLocked'],\n async () => {\n const {\n data: { data },\n } = await get<IsSSOLocked.Response>('/admin/providers/isSSOLocked');\n\n return data;\n },\n {\n enabled: window.strapi.isEE && window.strapi.features.isEnabled('sso'),\n onError() {\n toggleNotification({\n type: 'warning',\n message: { id: 'Settings.permissions.users.sso.provider.error' },\n });\n },\n }\n );\n\n const isLoading = isLoadingUser || isLoadingSSO;\n\n type UpdateUsersMeBody = UpdateMe.Request['body'] & {\n confirmPassword: string;\n currentTheme: ThemeName;\n };\n\n const submitMutation = useMutation<\n UpdateMe.Response['data'] & { currentTheme: ThemeName },\n AxiosError<UpdateMe.Response>,\n UpdateUsersMeBody\n >(\n async (body) => {\n const { confirmPassword: _confirmPassword, currentTheme, ...bodyRest } = body;\n let dataToSend = bodyRest;\n\n const isPasswordRequestBody = (\n data: UpdateMe.Request['body']\n ): data is UpdateMe.PasswordRequestBody => {\n return 'password' in data;\n };\n\n // The password fields are optional. If the user didn't touch them, don't send any password\n // to the API, because an empty string would throw a validation error\n if (isPasswordRequestBody(dataToSend) && dataToSend.password === '') {\n const {\n password: _password,\n currentPassword: _currentPassword,\n ...passwordRequestBodyRest\n } = dataToSend;\n dataToSend = passwordRequestBodyRest;\n }\n\n const { data } = await put<UpdateMe.Response>('/admin/users/me', dataToSend);\n\n return { ...data.data, currentTheme };\n },\n {\n async onSuccess(data) {\n await refetch();\n const { email, firstname, lastname, username, preferedLanguage } = data;\n auth.setUserInfo({ email, firstname, lastname, username, preferedLanguage });\n const userDisplayName = data.username || getFullName(data.firstname ?? '', data.lastname);\n setUserDisplayName(userDisplayName);\n\n if (data.preferedLanguage) {\n changeLocale(data.preferedLanguage);\n }\n\n // @ts-expect-error – we're going to implement a context assertion to avoid this\n onChangeTheme(data.currentTheme);\n\n trackUsage('didChangeMode', { newMode: data.currentTheme });\n\n toggleNotification({\n type: 'success',\n message: { id: 'notification.success.saved', defaultMessage: 'Saved' },\n });\n },\n async onSettled() {\n // @ts-expect-error – we're going to implement a context assertion to avoid this\n unlockApp();\n },\n }\n );\n\n const { isLoading: isSubmittingForm } = submitMutation;\n\n const handleSubmit = async (\n body: UpdateUsersMeBody,\n { setErrors }: FormikHelpers<UpdateUsersMeBody>\n ) => {\n // @ts-expect-error – we're going to implement a context assertion to avoid this\n lockApp();\n\n const username = body.username;\n submitMutation.mutate(\n { ...body, username },\n {\n onError(error) {\n const res = error?.response?.data;\n\n if (res?.data) {\n return setErrors(res.data);\n }\n\n return toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n },\n }\n );\n };\n\n if (isLoading || !data) {\n return (\n <Main aria-busy=\"true\">\n <Helmet\n title={formatMessage({\n id: 'Settings.profile.form.section.helmet.title',\n defaultMessage: 'User profile',\n })}\n />\n <HeaderLayout\n title={formatMessage({\n id: 'Settings.profile.form.section.profile.page.title',\n defaultMessage: 'Profile page',\n })}\n />\n <ContentLayout>\n <LoadingIndicatorPage />\n </ContentLayout>\n </Main>\n );\n }\n\n const hasLockedRole = dataSSO?.isSSOLocked ?? false;\n const { email, firstname, lastname, username, preferedLanguage } = data;\n const initialData = {\n email,\n firstname,\n lastname,\n username,\n preferedLanguage,\n currentTheme,\n confirmPassword: '',\n password: '',\n };\n\n return (\n <Main aria-busy={isSubmittingForm}>\n <Helmet\n title={formatMessage({\n id: 'Settings.profile.form.section.helmet.title',\n defaultMessage: 'User profile',\n })}\n />\n <Formik\n onSubmit={handleSubmit}\n // @ts-expect-error – currentTheme could be undefined because we don't have context assertion yet.\n initialValues={initialData}\n validateOnChange={false}\n validationSchema={schema}\n enableReinitialize\n >\n {({\n errors,\n values: {\n email,\n firstname,\n lastname,\n username,\n preferedLanguage,\n currentTheme,\n ...passwordValues\n },\n handleChange,\n isSubmitting,\n dirty,\n }) => {\n return (\n <Form>\n <HeaderLayout\n title={data.username || getFullName(data.firstname ?? '', data.lastname)}\n primaryAction={\n <Button\n startIcon={<Check />}\n loading={isSubmitting}\n type=\"submit\"\n disabled={!dirty}\n >\n {formatMessage({ id: 'global.save', defaultMessage: 'Save' })}\n </Button>\n }\n />\n <Box paddingBottom={10}>\n <ContentLayout>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <UserInfoSection\n errors={errors}\n onChange={handleChange}\n values={{\n firstname,\n lastname,\n username,\n email,\n }}\n />\n {!hasLockedRole && (\n <PasswordSection\n errors={errors}\n onChange={handleChange}\n values={passwordValues}\n />\n )}\n <PreferencesSection\n allApplicationThemes={allApplicationThemes}\n onChange={handleChange}\n values={{\n preferedLanguage,\n currentTheme,\n }}\n localeNames={localeNames}\n />\n </Flex>\n </ContentLayout>\n </Box>\n </Form>\n );\n }}\n </Formik>\n </Main>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * PasswordSection\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PasswordSectionProps {\n errors: { currentPassword?: string; password?: string; confirmPassword?: string };\n onChange: React.ChangeEventHandler<HTMLInputElement>;\n values: {\n currentPassword?: string;\n password?: string;\n confirmPassword?: string;\n };\n}\n\nconst PasswordSection = ({ errors, onChange, values }: PasswordSectionProps) => {\n const { formatMessage } = useIntl();\n const [currentPasswordShown, setCurrentPasswordShown] = React.useState(false);\n const [passwordShown, setPasswordShown] = React.useState(false);\n const [passwordConfirmShown, setPasswordConfirmShown] = React.useState(false);\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'global.change-password',\n defaultMessage: 'Change password',\n })}\n </Typography>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <TextInput\n error={\n errors.currentPassword\n ? formatMessage({\n id: errors.currentPassword,\n defaultMessage: errors.currentPassword,\n })\n : ''\n }\n onChange={onChange}\n value={values.currentPassword}\n label={formatMessage({\n id: 'Auth.form.currentPassword.label',\n defaultMessage: 'Current Password',\n })}\n name=\"currentPassword\"\n type={currentPasswordShown ? 'text' : 'password'}\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setCurrentPasswordShown((prev) => !prev);\n }}\n label={formatMessage(\n currentPasswordShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {currentPasswordShown ? <Eye /> : <EyeStriked />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n </Grid>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <PasswordInput\n error={\n errors.password\n ? formatMessage({\n id: errors.password,\n defaultMessage: errors.password,\n })\n : ''\n }\n onChange={onChange}\n value={values.password}\n label={formatMessage({\n id: 'global.password',\n defaultMessage: 'Password',\n })}\n name=\"password\"\n type={passwordShown ? 'text' : 'password'}\n autoComplete=\"new-password\"\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setPasswordShown((prev) => !prev);\n }}\n label={formatMessage(\n passwordShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {passwordShown ? <Eye /> : <EyeStriked />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <PasswordInput\n error={\n errors.confirmPassword\n ? formatMessage({\n id: errors.confirmPassword,\n defaultMessage: errors.confirmPassword,\n })\n : ''\n }\n onChange={onChange}\n value={values.confirmPassword}\n label={formatMessage({\n id: 'Auth.form.confirmPassword.label',\n defaultMessage: 'Confirm Password',\n })}\n name=\"confirmPassword\"\n type={passwordConfirmShown ? 'text' : 'password'}\n autoComplete=\"new-password\"\n endAction={\n <FieldActionWrapper\n onClick={(e) => {\n e.stopPropagation();\n setPasswordConfirmShown((prev) => !prev);\n }}\n label={formatMessage(\n passwordConfirmShown\n ? {\n id: 'Auth.form.password.show-password',\n defaultMessage: 'Show password',\n }\n : {\n id: 'Auth.form.password.hide-password',\n defaultMessage: 'Hide password',\n }\n )}\n >\n {passwordConfirmShown ? <Eye /> : <EyeStriked />}\n </FieldActionWrapper>\n }\n />\n </GridItem>\n </Grid>\n </Flex>\n </Box>\n );\n};\n\nconst PasswordInput = styled(TextInput)`\n ::-ms-reveal {\n display: none;\n }\n`;\n\n// Wrapper of the Eye Icon able to show or hide the Password inside the field\nconst FieldActionWrapper = styled(FieldAction)`\n svg {\n height: ${pxToRem(16)};\n width: ${pxToRem(16)};\n path {\n fill: ${({ theme }) => theme.colors.neutral600};\n }\n }\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * PreferencesSection\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PreferencesSectionProps extends Pick<GenericInputProps, 'onChange'> {\n values: {\n preferedLanguage?: string;\n currentTheme?: string;\n };\n localeNames: Record<string, string>;\n allApplicationThemes?: Partial<ThemeToggleContextContextValue['themes']>;\n}\n\nconst PreferencesSection = ({\n onChange,\n values,\n localeNames,\n allApplicationThemes = {},\n}: PreferencesSectionProps) => {\n const { formatMessage } = useIntl();\n const themesToDisplay = Object.keys(allApplicationThemes).filter(\n (themeName) => allApplicationThemes[themeName as keyof ThemeToggleContextContextValue['themes']]\n );\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'Settings.profile.form.section.experience.title',\n defaultMessage: 'Experience',\n })}\n </Typography>\n <Typography>\n {formatMessage(\n {\n id: 'Settings.profile.form.section.experience.interfaceLanguageHelp',\n defaultMessage:\n 'Preference changes will apply only to you. More information is available {here}.',\n },\n {\n here: (\n <Box\n as=\"a\"\n color=\"primary600\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href=\"https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#locales\"\n >\n {formatMessage({\n id: 'Settings.profile.form.section.experience.here',\n defaultMessage: 'here',\n })}\n </Box>\n ),\n }\n )}\n </Typography>\n </Flex>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <SingleSelect\n label={formatMessage({\n id: 'Settings.profile.form.section.experience.interfaceLanguage',\n defaultMessage: 'Interface language',\n })}\n placeholder={formatMessage({\n id: 'global.select',\n defaultMessage: 'Select',\n })}\n hint={formatMessage({\n id: 'Settings.profile.form.section.experience.interfaceLanguage.hint',\n defaultMessage: 'This will only display your own interface in the chosen language.',\n })}\n onClear={() => {\n onChange({\n target: { name: 'preferedLanguage', value: null },\n });\n }}\n clearLabel={formatMessage({\n id: 'Settings.profile.form.section.experience.clear.select',\n defaultMessage: 'Clear the interface language selected',\n })}\n value={values.preferedLanguage}\n onChange={(e) => {\n onChange({\n target: { name: 'preferedLanguage', value: e },\n });\n }}\n >\n {Object.entries(localeNames).map(([language, langName]) => (\n <SingleSelectOption value={language} key={language}>\n {langName}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </GridItem>\n <GridItem s={12} col={6}>\n <SingleSelect\n label={formatMessage({\n id: 'Settings.profile.form.section.experience.mode.label',\n defaultMessage: 'Interface mode',\n })}\n placeholder={formatMessage({\n id: 'components.Select.placeholder',\n defaultMessage: 'Select',\n })}\n hint={formatMessage({\n id: 'Settings.profile.form.section.experience.mode.hint',\n defaultMessage: 'Displays your interface in the chosen mode.',\n })}\n value={values.currentTheme}\n onChange={(e) => {\n onChange({\n target: { name: 'currentTheme', value: e },\n });\n }}\n >\n <SingleSelectOption value=\"system\">\n {formatMessage({\n id: 'Settings.profile.form.section.experience.mode.option-system-label',\n defaultMessage: 'Use system settings',\n })}\n </SingleSelectOption>\n {themesToDisplay.map((theme) => (\n <SingleSelectOption value={theme} key={theme}>\n {formatMessage(\n {\n id: 'Settings.profile.form.section.experience.mode.option-label',\n defaultMessage: '{name} mode',\n },\n {\n name: formatMessage({\n id: theme,\n defaultMessage: upperFirst(theme),\n }),\n }\n )}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </GridItem>\n </Grid>\n </Flex>\n </Box>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * UserInfoSection\n * -----------------------------------------------------------------------------------------------*/\n\ninterface UserInfoSectionProps extends Pick<GenericInputProps, 'onChange'> {\n errors: { firstname?: string; lastname?: string; username?: string; email?: string };\n values: {\n firstname?: string;\n lastname?: string;\n username?: string;\n email?: string;\n };\n}\n\nconst UserInfoSection = ({ errors, onChange, values }: UserInfoSectionProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Box\n background=\"neutral0\"\n hasRadius\n shadow=\"filterShadow\"\n paddingTop={6}\n paddingBottom={6}\n paddingLeft={7}\n paddingRight={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Typography variant=\"delta\" as=\"h2\">\n {formatMessage({\n id: 'global.profile',\n defaultMessage: 'Profile',\n })}\n </Typography>\n <Grid gap={5}>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{\n id: 'Auth.form.firstname.label',\n defaultMessage: 'First name',\n }}\n error={errors.firstname}\n onChange={onChange}\n value={values.firstname}\n type=\"text\"\n name=\"firstname\"\n required\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{\n id: 'Auth.form.lastname.label',\n defaultMessage: 'Last name',\n }}\n error={errors.lastname}\n onChange={onChange}\n value={values.lastname}\n type=\"text\"\n name=\"lastname\"\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{ id: 'Auth.form.email.label', defaultMessage: 'Email' }}\n error={errors.email}\n onChange={onChange}\n value={values.email}\n type=\"email\"\n name=\"email\"\n required\n />\n </GridItem>\n <GridItem s={12} col={6}>\n <GenericInput\n intlLabel={{\n id: 'Auth.form.username.label',\n defaultMessage: 'Username',\n }}\n error={errors.username}\n onChange={onChange}\n value={values.username}\n type=\"text\"\n name=\"username\"\n />\n </GridItem>\n </Grid>\n </Flex>\n </Box>\n );\n};\n\nexport { ProfilePage };\n"],"names":["profileValidation","data","currentTheme","email","firstname","lastname","username","preferedLanguage"],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { b as build$1, h as handleUnexpectedError } from "./index-
|
|
1
|
+
import { b as build$1, h as handleUnexpectedError } from "./index-dc89c18c.mjs";
|
|
2
|
+
import "@strapi/strapi/dist/utils/ee";
|
|
2
3
|
import "@strapi/typescript-utils";
|
|
3
4
|
import "node:os";
|
|
4
5
|
import "node:fs/promises";
|
|
@@ -8,6 +9,16 @@ import "semver";
|
|
|
8
9
|
import "resolve-from";
|
|
9
10
|
import "execa";
|
|
10
11
|
import "read-pkg-up";
|
|
12
|
+
import "perf_hooks";
|
|
13
|
+
import "browserslist";
|
|
14
|
+
import "@strapi/strapi";
|
|
15
|
+
import "@strapi/utils";
|
|
16
|
+
import "dotenv";
|
|
17
|
+
import "esbuild-register/dist/node";
|
|
18
|
+
import "node:fs";
|
|
19
|
+
import "lodash/camelCase";
|
|
20
|
+
import "boxen";
|
|
21
|
+
import "chalk";
|
|
11
22
|
import "outdent";
|
|
12
23
|
import "prettier";
|
|
13
24
|
import "react";
|
|
@@ -24,17 +35,6 @@ import "node:crypto";
|
|
|
24
35
|
import "@pmmmwh/react-refresh-webpack-plugin";
|
|
25
36
|
import "path";
|
|
26
37
|
import "find-root";
|
|
27
|
-
import "esbuild-register/dist/node";
|
|
28
|
-
import "boxen";
|
|
29
|
-
import "chalk";
|
|
30
|
-
import "browserslist";
|
|
31
|
-
import "@strapi/strapi";
|
|
32
|
-
import "@strapi/utils";
|
|
33
|
-
import "dotenv";
|
|
34
|
-
import "node:fs";
|
|
35
|
-
import "lodash/camelCase";
|
|
36
|
-
import "@strapi/strapi/dist/utils/ee";
|
|
37
|
-
import "perf_hooks";
|
|
38
38
|
import "chokidar";
|
|
39
39
|
import "node:cluster";
|
|
40
40
|
import "node:util";
|
|
@@ -65,4 +65,4 @@ const build = async (options) => {
|
|
|
65
65
|
export {
|
|
66
66
|
build
|
|
67
67
|
};
|
|
68
|
-
//# sourceMappingURL=build-
|
|
68
|
+
//# sourceMappingURL=build-92e15b93.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-
|
|
1
|
+
{"version":3,"file":"build-92e15b93.mjs","sources":["../../_internal/cli/commands/build.ts"],"sourcesContent":["import { build as nodeBuild, BuildOptions } from '../../node/build';\nimport { handleUnexpectedError } from '../../node/core/errors';\n\ninterface BuildCLIOptions extends BuildOptions {\n /**\n * @deprecated use `minify` instead\n */\n optimization?: boolean;\n}\n\nconst build = async (options: BuildCLIOptions) => {\n try {\n if (typeof process.env.STRAPI_ENFORCE_SOURCEMAPS !== 'undefined') {\n options.logger.warn(\n \"[@strapi/strapi]: STRAPI_ENFORCE_SOURCEMAPS is now deprecated. You can enable sourcemaps by passing '--sourcemaps' to the build command.\"\n );\n }\n if (typeof options.optimization !== 'undefined' && options.optimization !== true) {\n options.logger.warn(\n \"[@strapi/strapi]: The optimization argument is now deprecated. Use '--minify' instead.\"\n );\n }\n\n const envSourceMaps = process.env.STRAPI_ENFORCE_SOURCEMAPS === 'true';\n\n await nodeBuild({\n ...options,\n minify: options.optimization ?? options.minify,\n sourcemaps: options.sourcemaps || envSourceMaps,\n });\n } catch (err) {\n handleUnexpectedError(err);\n }\n};\n\nexport { build };\nexport type { BuildCLIOptions };\n"],"names":["nodeBuild"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUM,MAAA,QAAQ,OAAO,YAA6B;AAC5C,MAAA;AACF,QAAI,OAAO,QAAQ,IAAI,8BAA8B,aAAa;AAChE,cAAQ,OAAO;AAAA,QACb;AAAA,MAAA;AAAA,IAEJ;AACA,QAAI,OAAO,QAAQ,iBAAiB,eAAe,QAAQ,iBAAiB,MAAM;AAChF,cAAQ,OAAO;AAAA,QACb;AAAA,MAAA;AAAA,IAEJ;AAEM,UAAA,gBAAgB,QAAQ,IAAI,8BAA8B;AAEhE,UAAMA,QAAU;AAAA,MACd,GAAG;AAAA,MACH,QAAQ,QAAQ,gBAAgB,QAAQ;AAAA,MACxC,YAAY,QAAQ,cAAc;AAAA,IAAA,CACnC;AAAA,WACM,KAAK;AACZ,0BAAsB,GAAG;AAAA,EAC3B;AACF;"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const index = require("./index-
|
|
3
|
+
const index = require("./index-1a74fa41.js");
|
|
4
|
+
require("@strapi/strapi/dist/utils/ee");
|
|
4
5
|
require("@strapi/typescript-utils");
|
|
5
6
|
require("node:os");
|
|
6
7
|
require("node:fs/promises");
|
|
@@ -10,6 +11,16 @@ require("semver");
|
|
|
10
11
|
require("resolve-from");
|
|
11
12
|
require("execa");
|
|
12
13
|
require("read-pkg-up");
|
|
14
|
+
require("perf_hooks");
|
|
15
|
+
require("browserslist");
|
|
16
|
+
require("@strapi/strapi");
|
|
17
|
+
require("@strapi/utils");
|
|
18
|
+
require("dotenv");
|
|
19
|
+
require("esbuild-register/dist/node");
|
|
20
|
+
require("node:fs");
|
|
21
|
+
require("lodash/camelCase");
|
|
22
|
+
require("boxen");
|
|
23
|
+
require("chalk");
|
|
13
24
|
require("outdent");
|
|
14
25
|
require("prettier");
|
|
15
26
|
require("react");
|
|
@@ -26,17 +37,6 @@ require("node:crypto");
|
|
|
26
37
|
require("@pmmmwh/react-refresh-webpack-plugin");
|
|
27
38
|
require("path");
|
|
28
39
|
require("find-root");
|
|
29
|
-
require("esbuild-register/dist/node");
|
|
30
|
-
require("boxen");
|
|
31
|
-
require("chalk");
|
|
32
|
-
require("browserslist");
|
|
33
|
-
require("@strapi/strapi");
|
|
34
|
-
require("@strapi/utils");
|
|
35
|
-
require("dotenv");
|
|
36
|
-
require("node:fs");
|
|
37
|
-
require("lodash/camelCase");
|
|
38
|
-
require("@strapi/strapi/dist/utils/ee");
|
|
39
|
-
require("perf_hooks");
|
|
40
40
|
require("chokidar");
|
|
41
41
|
require("node:cluster");
|
|
42
42
|
require("node:util");
|
|
@@ -65,4 +65,4 @@ const build = async (options) => {
|
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
67
|
exports.build = build;
|
|
68
|
-
//# sourceMappingURL=build-
|
|
68
|
+
//# sourceMappingURL=build-df2f219f.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-
|
|
1
|
+
{"version":3,"file":"build-df2f219f.js","sources":["../../_internal/cli/commands/build.ts"],"sourcesContent":["import { build as nodeBuild, BuildOptions } from '../../node/build';\nimport { handleUnexpectedError } from '../../node/core/errors';\n\ninterface BuildCLIOptions extends BuildOptions {\n /**\n * @deprecated use `minify` instead\n */\n optimization?: boolean;\n}\n\nconst build = async (options: BuildCLIOptions) => {\n try {\n if (typeof process.env.STRAPI_ENFORCE_SOURCEMAPS !== 'undefined') {\n options.logger.warn(\n \"[@strapi/strapi]: STRAPI_ENFORCE_SOURCEMAPS is now deprecated. You can enable sourcemaps by passing '--sourcemaps' to the build command.\"\n );\n }\n if (typeof options.optimization !== 'undefined' && options.optimization !== true) {\n options.logger.warn(\n \"[@strapi/strapi]: The optimization argument is now deprecated. Use '--minify' instead.\"\n );\n }\n\n const envSourceMaps = process.env.STRAPI_ENFORCE_SOURCEMAPS === 'true';\n\n await nodeBuild({\n ...options,\n minify: options.optimization ?? options.minify,\n sourcemaps: options.sourcemaps || envSourceMaps,\n });\n } catch (err) {\n handleUnexpectedError(err);\n }\n};\n\nexport { build };\nexport type { BuildCLIOptions };\n"],"names":["nodeBuild","handleUnexpectedError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUM,MAAA,QAAQ,OAAO,YAA6B;AAC5C,MAAA;AACF,QAAI,OAAO,QAAQ,IAAI,8BAA8B,aAAa;AAChE,cAAQ,OAAO;AAAA,QACb;AAAA,MAAA;AAAA,IAEJ;AACA,QAAI,OAAO,QAAQ,iBAAiB,eAAe,QAAQ,iBAAiB,MAAM;AAChF,cAAQ,OAAO;AAAA,QACb;AAAA,MAAA;AAAA,IAEJ;AAEM,UAAA,gBAAgB,QAAQ,IAAI,8BAA8B;AAEhE,UAAMA,YAAU;AAAA,MACd,GAAG;AAAA,MACH,QAAQ,QAAQ,gBAAgB,QAAQ;AAAA,MACxC,YAAY,QAAQ,cAAc;AAAA,IAAA,CACnC;AAAA,WACM,KAAK;AACZC,UAAA,sBAAsB,GAAG;AAAA,EAC3B;AACF;;"}
|
|
@@ -8,7 +8,7 @@ const reactIntl = require("react-intl");
|
|
|
8
8
|
const reactQuery = require("react-query");
|
|
9
9
|
const reactRouterDom = require("react-router-dom");
|
|
10
10
|
const styled = require("styled-components");
|
|
11
|
-
const index = require("./index-
|
|
11
|
+
const index = require("./index-133699a3.js");
|
|
12
12
|
const SSOProviders = require("./SSOProviders-b395a4e6.js");
|
|
13
13
|
require("react-dom/client");
|
|
14
14
|
require("invariant");
|
|
@@ -79,4 +79,4 @@ const FORMS = {
|
|
|
79
79
|
providers: Providers
|
|
80
80
|
};
|
|
81
81
|
exports.FORMS = FORMS;
|
|
82
|
-
//# sourceMappingURL=constants-
|
|
82
|
+
//# sourceMappingURL=constants-06897e38.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants-
|
|
1
|
+
{"version":3,"file":"constants-06897e38.js","sources":["../../ee/admin/src/pages/AuthPage/components/Providers.tsx","../../ee/admin/src/pages/AuthPage/constants.ts"],"sourcesContent":["import { Box, Button, Divider, Flex, Loader, Main, Typography } from '@strapi/design-system';\nimport { Link } from '@strapi/design-system/v2';\nimport { useFetchClient } from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport { NavLink, Redirect, useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { Logo } from '../../../../../../admin/src/components/UnauthenticatedLogo';\nimport {\n Column,\n LayoutContent,\n UnauthenticatedLayout,\n} from '../../../../../../admin/src/layouts/UnauthenticatedLayout';\nimport { GetProviders } from '../../../../../../shared/contracts/providers';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst Providers = () => {\n const { push } = useHistory();\n const { formatMessage } = useIntl();\n const { get } = useFetchClient();\n const { isLoading, data: providers = [] } = useQuery(\n ['ee', 'providers'],\n async () => {\n const { data } = await get<GetProviders.Response>('/admin/providers');\n\n return data;\n },\n {\n enabled: window.strapi.features.isEnabled(window.strapi.features.SSO),\n }\n );\n\n const handleClick = () => {\n push('/auth/login');\n };\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Redirect to=\"/auth/login\" />;\n }\n\n return (\n <UnauthenticatedLayout>\n <Main>\n <LayoutContent>\n <Column>\n <Logo />\n <Box paddingTop={6} paddingBottom={1}>\n <Typography as=\"h1\" variant=\"alpha\">\n {formatMessage({ id: 'Auth.form.welcome.title' })}\n </Typography>\n </Box>\n <Box paddingBottom={7}>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.subtitle' })}\n </Typography>\n </Box>\n </Column>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n {isLoading ? (\n <Flex justifyContent=\"center\">\n <Loader>{formatMessage({ id: 'Auth.login.sso.loading' })}</Loader>\n </Flex>\n ) : (\n <SSOProviders providers={providers} />\n )}\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'or' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <Button fullWidth size=\"L\" onClick={handleClick}>\n {formatMessage({ id: 'Auth.form.button.login.strapi' })}\n </Button>\n </Flex>\n </LayoutContent>\n <Flex justifyContent=\"center\">\n <Box paddingTop={4}>\n {/* @ts-expect-error – error with inferring the props from the as component */}\n <Link as={NavLink} to=\"/auth/forgot-password\">\n <Typography variant=\"pi\">\n {formatMessage({ id: 'Auth.link.forgot-password' })}\n </Typography>\n </Link>\n </Box>\n </Flex>\n </Main>\n </UnauthenticatedLayout>\n );\n};\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nexport { Providers };\n","import type { ComponentType } from 'react';\n\nimport { Providers } from './components/Providers';\n\ntype AuthType = 'providers';\n\ntype FormDictionary = Record<AuthType, ComponentType>;\n\nexport const FORMS = {\n providers: Providers,\n} satisfies FormDictionary;\n"],"names":["useHistory","useIntl","useFetchClient","useQuery","jsx","Redirect","UnauthenticatedLayout","jsxs","Main","LayoutContent","Column","Logo","Box","Typography","Flex","Loader","SSOProviders","Button","Link","NavLink","styled","Divider"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ const ROUTES_EE = [
|
|
|
2
2
|
...window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS) ? [
|
|
3
3
|
{
|
|
4
4
|
async Component() {
|
|
5
|
-
const component = await import("./index-
|
|
5
|
+
const component = await import("./index-9f8605e5.mjs");
|
|
6
6
|
return component;
|
|
7
7
|
},
|
|
8
8
|
to: "/settings/audit-logs",
|
|
@@ -12,7 +12,7 @@ const ROUTES_EE = [
|
|
|
12
12
|
...window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS) ? [
|
|
13
13
|
{
|
|
14
14
|
async Component() {
|
|
15
|
-
const component = await import("./index-
|
|
15
|
+
const component = await import("./index-91ef29b3.mjs");
|
|
16
16
|
return component;
|
|
17
17
|
},
|
|
18
18
|
to: "/settings/review-workflows",
|
|
@@ -20,7 +20,7 @@ const ROUTES_EE = [
|
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
22
|
async Component() {
|
|
23
|
-
const component = await import("./index-
|
|
23
|
+
const component = await import("./index-ea43b165.mjs");
|
|
24
24
|
return component;
|
|
25
25
|
},
|
|
26
26
|
to: "/settings/review-workflows/create",
|
|
@@ -28,7 +28,7 @@ const ROUTES_EE = [
|
|
|
28
28
|
},
|
|
29
29
|
{
|
|
30
30
|
async Component() {
|
|
31
|
-
const component = await import("./index-
|
|
31
|
+
const component = await import("./index-c9e68296.mjs");
|
|
32
32
|
return component;
|
|
33
33
|
},
|
|
34
34
|
to: "/settings/review-workflows/:workflowId",
|
|
@@ -38,7 +38,7 @@ const ROUTES_EE = [
|
|
|
38
38
|
...window.strapi.features.isEnabled(window.strapi.features.SSO) ? [
|
|
39
39
|
{
|
|
40
40
|
async Component() {
|
|
41
|
-
const component = await import("./index-
|
|
41
|
+
const component = await import("./index-b17c7874.mjs");
|
|
42
42
|
return component;
|
|
43
43
|
},
|
|
44
44
|
to: "/settings/single-sign-on",
|
|
@@ -49,4 +49,4 @@ const ROUTES_EE = [
|
|
|
49
49
|
export {
|
|
50
50
|
ROUTES_EE
|
|
51
51
|
};
|
|
52
|
-
//# sourceMappingURL=constants-
|
|
52
|
+
//# sourceMappingURL=constants-362e760f.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants-
|
|
1
|
+
{"version":3,"file":"constants-362e760f.mjs","sources":["../../ee/admin/src/pages/SettingsPage/constants.js"],"sourcesContent":["export const ROUTES_EE = [\n ...(window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS)\n ? [\n {\n async Component() {\n const component = await import('./pages/AuditLogs/ProtectedListPage');\n\n return component;\n },\n to: '/settings/audit-logs',\n exact: true,\n },\n ]\n : []),\n\n ...(window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS)\n ? [\n {\n async Component() {\n const component = await import('./pages/ReviewWorkflows/pages/ListView');\n\n return component;\n },\n to: '/settings/review-workflows',\n exact: true,\n },\n\n {\n async Component() {\n const component = await import('./pages/ReviewWorkflows/pages/CreateView');\n\n return component;\n },\n to: '/settings/review-workflows/create',\n exact: true,\n },\n\n {\n async Component() {\n const component = await import('./pages/ReviewWorkflows/pages/EditView');\n\n return component;\n },\n to: '/settings/review-workflows/:workflowId',\n exact: true,\n },\n ]\n : []),\n\n ...(window.strapi.features.isEnabled(window.strapi.features.SSO)\n ? [\n {\n async Component() {\n const component = await import('./pages/SingleSignOn');\n\n return component;\n },\n to: '/settings/single-sign-on',\n exact: true,\n },\n ]\n : []),\n];\n"],"names":[],"mappings":"AAAO,MAAM,YAAY;AAAA,EACvB,GAAI,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,UAAU,IAClE;AAAA,IACE;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,OAAO,sBAAqC;AAE7D,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EAAA,IAEF,CAAC;AAAA,EAEL,GAAI,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,gBAAgB,IACxE;AAAA,IACE;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,OAAO,sBAAwC;AAEhE,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,IAEA;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,OAAO,sBAA0C;AAElE,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,IAEA;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,OAAO,sBAAwC;AAEhE,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EAAA,IAEF,CAAC;AAAA,EAEL,GAAI,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,GAAG,IAC3D;AAAA,IACE;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,OAAO,sBAAsB;AAE9C,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EAAA,IAEF,CAAC;AACP;"}
|
|
@@ -4,7 +4,7 @@ const ROUTES_EE = [
|
|
|
4
4
|
...window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS) ? [
|
|
5
5
|
{
|
|
6
6
|
async Component() {
|
|
7
|
-
const component = await Promise.resolve().then(() => require("./index-
|
|
7
|
+
const component = await Promise.resolve().then(() => require("./index-64a156de.js"));
|
|
8
8
|
return component;
|
|
9
9
|
},
|
|
10
10
|
to: "/settings/audit-logs",
|
|
@@ -14,7 +14,7 @@ const ROUTES_EE = [
|
|
|
14
14
|
...window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS) ? [
|
|
15
15
|
{
|
|
16
16
|
async Component() {
|
|
17
|
-
const component = await Promise.resolve().then(() => require("./index-
|
|
17
|
+
const component = await Promise.resolve().then(() => require("./index-a0af8beb.js"));
|
|
18
18
|
return component;
|
|
19
19
|
},
|
|
20
20
|
to: "/settings/review-workflows",
|
|
@@ -22,7 +22,7 @@ const ROUTES_EE = [
|
|
|
22
22
|
},
|
|
23
23
|
{
|
|
24
24
|
async Component() {
|
|
25
|
-
const component = await Promise.resolve().then(() => require("./index-
|
|
25
|
+
const component = await Promise.resolve().then(() => require("./index-5c19f439.js"));
|
|
26
26
|
return component;
|
|
27
27
|
},
|
|
28
28
|
to: "/settings/review-workflows/create",
|
|
@@ -30,7 +30,7 @@ const ROUTES_EE = [
|
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
32
|
async Component() {
|
|
33
|
-
const component = await Promise.resolve().then(() => require("./index-
|
|
33
|
+
const component = await Promise.resolve().then(() => require("./index-9195720c.js"));
|
|
34
34
|
return component;
|
|
35
35
|
},
|
|
36
36
|
to: "/settings/review-workflows/:workflowId",
|
|
@@ -40,7 +40,7 @@ const ROUTES_EE = [
|
|
|
40
40
|
...window.strapi.features.isEnabled(window.strapi.features.SSO) ? [
|
|
41
41
|
{
|
|
42
42
|
async Component() {
|
|
43
|
-
const component = await Promise.resolve().then(() => require("./index-
|
|
43
|
+
const component = await Promise.resolve().then(() => require("./index-02064a74.js"));
|
|
44
44
|
return component;
|
|
45
45
|
},
|
|
46
46
|
to: "/settings/single-sign-on",
|
|
@@ -49,4 +49,4 @@ const ROUTES_EE = [
|
|
|
49
49
|
] : []
|
|
50
50
|
];
|
|
51
51
|
exports.ROUTES_EE = ROUTES_EE;
|
|
52
|
-
//# sourceMappingURL=constants-
|
|
52
|
+
//# sourceMappingURL=constants-4539f7ac.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants-
|
|
1
|
+
{"version":3,"file":"constants-4539f7ac.js","sources":["../../ee/admin/src/pages/SettingsPage/constants.js"],"sourcesContent":["export const ROUTES_EE = [\n ...(window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS)\n ? [\n {\n async Component() {\n const component = await import('./pages/AuditLogs/ProtectedListPage');\n\n return component;\n },\n to: '/settings/audit-logs',\n exact: true,\n },\n ]\n : []),\n\n ...(window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS)\n ? [\n {\n async Component() {\n const component = await import('./pages/ReviewWorkflows/pages/ListView');\n\n return component;\n },\n to: '/settings/review-workflows',\n exact: true,\n },\n\n {\n async Component() {\n const component = await import('./pages/ReviewWorkflows/pages/CreateView');\n\n return component;\n },\n to: '/settings/review-workflows/create',\n exact: true,\n },\n\n {\n async Component() {\n const component = await import('./pages/ReviewWorkflows/pages/EditView');\n\n return component;\n },\n to: '/settings/review-workflows/:workflowId',\n exact: true,\n },\n ]\n : []),\n\n ...(window.strapi.features.isEnabled(window.strapi.features.SSO)\n ? [\n {\n async Component() {\n const component = await import('./pages/SingleSignOn');\n\n return component;\n },\n to: '/settings/single-sign-on',\n exact: true,\n },\n ]\n : []),\n];\n"],"names":[],"mappings":";;AAAO,MAAM,YAAY;AAAA,EACvB,GAAI,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,UAAU,IAClE;AAAA,IACE;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA,QAAA,qBAAqC;AAE7D,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EAAA,IAEF,CAAC;AAAA,EAEL,GAAI,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,gBAAgB,IACxE;AAAA,IACE;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA,QAAA,qBAAwC;AAEhE,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,IAEA;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA,QAAA,qBAA0C;AAElE,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,IAEA;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA,QAAA,qBAAwC;AAEhE,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EAAA,IAEF,CAAC;AAAA,EAEL,GAAI,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,GAAG,IAC3D;AAAA,IACE;AAAA,MACE,MAAM,YAAY;AACV,cAAA,YAAY,MAAM,QAAO,QAAA,EAAA,KAAA,MAAA,QAAA,qBAAsB;AAE9C,eAAA;AAAA,MACT;AAAA,MACA,IAAI;AAAA,MACJ,OAAO;AAAA,IACT;AAAA,EAAA,IAEF,CAAC;AACP;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { g as getTrad } from "./schema-
|
|
1
|
+
import { g as getTrad } from "./schema-549f8236.mjs";
|
|
2
2
|
import { S as STAGE_ATTRIBUTE_NAME, A as ASSIGNEE_ATTRIBUTE_NAME } from "./constants-a92ce583.mjs";
|
|
3
3
|
import "react";
|
|
4
4
|
import "react-dnd";
|
|
5
5
|
import "@reduxjs/toolkit";
|
|
6
|
-
import "./index-
|
|
6
|
+
import "./index-ce41b6f0.mjs";
|
|
7
7
|
import "react/jsx-runtime";
|
|
8
8
|
import "@strapi/helper-plugin";
|
|
9
9
|
import "react-dom/client";
|
|
@@ -82,4 +82,4 @@ const REVIEW_WORKFLOW_COLUMNS_EE = [
|
|
|
82
82
|
export {
|
|
83
83
|
REVIEW_WORKFLOW_COLUMNS_EE
|
|
84
84
|
};
|
|
85
|
-
//# sourceMappingURL=constants-
|
|
85
|
+
//# sourceMappingURL=constants-59bcff2e.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants-
|
|
1
|
+
{"version":3,"file":"constants-59bcff2e.mjs","sources":["../../ee/admin/src/content-manager/pages/ListView/ReviewWorkflowsColumn/constants.js"],"sourcesContent":["import getTrad from '../../../../../../../admin/src/content-manager/utils/getTrad';\nimport {\n ASSIGNEE_ATTRIBUTE_NAME,\n STAGE_ATTRIBUTE_NAME,\n} from '../../EditView/InformationBox/constants';\n\nexport const REVIEW_WORKFLOW_COLUMNS_EE = [\n {\n key: `__${STAGE_ATTRIBUTE_NAME}_temp_key__`,\n name: STAGE_ATTRIBUTE_NAME,\n fieldSchema: {\n type: 'relation',\n },\n metadatas: {\n // formatMessage() will be applied when the column is rendered\n label: {\n id: getTrad(`containers.ListPage.table-headers.reviewWorkflows.stage`),\n defaultMessage: 'Review stage',\n },\n searchable: false,\n sortable: true,\n mainField: {\n name: 'name',\n schema: {\n type: 'string',\n },\n },\n },\n },\n {\n key: `__${ASSIGNEE_ATTRIBUTE_NAME}_temp_key__`,\n name: ASSIGNEE_ATTRIBUTE_NAME,\n fieldSchema: {\n type: 'relation',\n },\n metadatas: {\n label: {\n id: getTrad(`containers.ListPage.table-headers.reviewWorkflows.assignee`),\n defaultMessage: 'Assignee',\n },\n searchable: false,\n sortable: true,\n mainField: {\n name: 'firstname',\n schema: {\n type: 'string',\n },\n },\n },\n },\n];\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,MAAM,6BAA6B;AAAA,EACxC;AAAA,IACE,KAAK,KAAK,oBAAoB;AAAA,IAC9B,MAAM;AAAA,IACN,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA;AAAA,MAET,OAAO;AAAA,QACL,IAAI,QAAQ,yDAAyD;AAAA,QACrE,gBAAgB;AAAA,MAClB;AAAA,MACA,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,WAAW;AAAA,QACT,MAAM;AAAA,QACN,QAAQ;AAAA,UACN,MAAM;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,KAAK,KAAK,uBAAuB;AAAA,IACjC,MAAM;AAAA,IACN,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,WAAW;AAAA,MACT,OAAO;AAAA,QACL,IAAI,QAAQ,4DAA4D;AAAA,QACxE,gBAAgB;AAAA,MAClB;AAAA,MACA,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,WAAW;AAAA,QACT,MAAM;AAAA,QACN,QAAQ;AAAA,UACN,MAAM;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;"}
|
|
@@ -6,7 +6,7 @@ import { useIntl } from "react-intl";
|
|
|
6
6
|
import { useQuery } from "react-query";
|
|
7
7
|
import { useHistory, Redirect, NavLink } from "react-router-dom";
|
|
8
8
|
import styled from "styled-components";
|
|
9
|
-
import { U as UnauthenticatedLayout, e as LayoutContent, C as Column, f as Logo } from "./index-
|
|
9
|
+
import { U as UnauthenticatedLayout, e as LayoutContent, C as Column, f as Logo } from "./index-ce41b6f0.mjs";
|
|
10
10
|
import { S as SSOProviders } from "./SSOProviders-62bfad92.mjs";
|
|
11
11
|
import "react-dom/client";
|
|
12
12
|
import "invariant";
|
|
@@ -77,4 +77,4 @@ const FORMS = {
|
|
|
77
77
|
export {
|
|
78
78
|
FORMS
|
|
79
79
|
};
|
|
80
|
-
//# sourceMappingURL=constants-
|
|
80
|
+
//# sourceMappingURL=constants-6dcb43aa.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants-
|
|
1
|
+
{"version":3,"file":"constants-6dcb43aa.mjs","sources":["../../ee/admin/src/pages/AuthPage/components/Providers.tsx","../../ee/admin/src/pages/AuthPage/constants.ts"],"sourcesContent":["import { Box, Button, Divider, Flex, Loader, Main, Typography } from '@strapi/design-system';\nimport { Link } from '@strapi/design-system/v2';\nimport { useFetchClient } from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport { NavLink, Redirect, useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { Logo } from '../../../../../../admin/src/components/UnauthenticatedLogo';\nimport {\n Column,\n LayoutContent,\n UnauthenticatedLayout,\n} from '../../../../../../admin/src/layouts/UnauthenticatedLayout';\nimport { GetProviders } from '../../../../../../shared/contracts/providers';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst Providers = () => {\n const { push } = useHistory();\n const { formatMessage } = useIntl();\n const { get } = useFetchClient();\n const { isLoading, data: providers = [] } = useQuery(\n ['ee', 'providers'],\n async () => {\n const { data } = await get<GetProviders.Response>('/admin/providers');\n\n return data;\n },\n {\n enabled: window.strapi.features.isEnabled(window.strapi.features.SSO),\n }\n );\n\n const handleClick = () => {\n push('/auth/login');\n };\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Redirect to=\"/auth/login\" />;\n }\n\n return (\n <UnauthenticatedLayout>\n <Main>\n <LayoutContent>\n <Column>\n <Logo />\n <Box paddingTop={6} paddingBottom={1}>\n <Typography as=\"h1\" variant=\"alpha\">\n {formatMessage({ id: 'Auth.form.welcome.title' })}\n </Typography>\n </Box>\n <Box paddingBottom={7}>\n <Typography variant=\"epsilon\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.subtitle' })}\n </Typography>\n </Box>\n </Column>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n {isLoading ? (\n <Flex justifyContent=\"center\">\n <Loader>{formatMessage({ id: 'Auth.login.sso.loading' })}</Loader>\n </Flex>\n ) : (\n <SSOProviders providers={providers} />\n )}\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'or' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <Button fullWidth size=\"L\" onClick={handleClick}>\n {formatMessage({ id: 'Auth.form.button.login.strapi' })}\n </Button>\n </Flex>\n </LayoutContent>\n <Flex justifyContent=\"center\">\n <Box paddingTop={4}>\n {/* @ts-expect-error – error with inferring the props from the as component */}\n <Link as={NavLink} to=\"/auth/forgot-password\">\n <Typography variant=\"pi\">\n {formatMessage({ id: 'Auth.link.forgot-password' })}\n </Typography>\n </Link>\n </Box>\n </Flex>\n </Main>\n </UnauthenticatedLayout>\n );\n};\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nexport { Providers };\n","import type { ComponentType } from 'react';\n\nimport { Providers } from './components/Providers';\n\ntype AuthType = 'providers';\n\ntype FormDictionary = Record<AuthType, ComponentType>;\n\nexport const FORMS = {\n providers: Providers,\n} satisfies FormDictionary;\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAM,YAAY,MAAM;AAChB,QAAA,EAAE,SAAS;AACX,QAAA,EAAE,kBAAkB;AACpB,QAAA,EAAE,QAAQ;AAChB,QAAM,EAAE,WAAW,MAAM,YAAY,CAAA,EAAO,IAAA;AAAA,IAC1C,CAAC,MAAM,WAAW;AAAA,IAClB,YAAY;AACV,YAAM,EAAE,KAAS,IAAA,MAAM,IAA2B,kBAAkB;AAE7D,aAAA;AAAA,IACT;AAAA,IACA;AAAA,MACE,SAAS,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,GAAG;AAAA,IACtE;AAAA,EAAA;AAGF,QAAM,cAAc,MAAM;AACxB,SAAK,aAAa;AAAA,EAAA;AAGpB,MACE,CAAC,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,GAAG,KAC3D,CAAC,aAAa,UAAU,WAAW,GACpC;AACO,WAAA,oBAAC,UAAS,EAAA,IAAG,cAAc,CAAA;AAAA,EACpC;AAGE,SAAA,oBAAC,uBACC,EAAA,UAAA,qBAAC,MACC,EAAA,UAAA;AAAA,IAAA,qBAAC,eACC,EAAA,UAAA;AAAA,MAAA,qBAAC,QACC,EAAA,UAAA;AAAA,QAAA,oBAAC,MAAK,EAAA;AAAA,4BACL,KAAI,EAAA,YAAY,GAAG,eAAe,GACjC,8BAAC,YAAW,EAAA,IAAG,MAAK,SAAQ,SACzB,UAAc,cAAA,EAAE,IAAI,0BAA0B,CAAC,EAClD,CAAA,GACF;AAAA,4BACC,KAAI,EAAA,eAAe,GAClB,UAAA,oBAAC,cAAW,SAAQ,WAAU,WAAU,cACrC,wBAAc,EAAE,IAAI,0BAA0B,CAAC,EAClD,CAAA,GACF;AAAA,MAAA,GACF;AAAA,2BACC,MAAK,EAAA,WAAU,UAAS,YAAW,WAAU,KAAK,GAChD,UAAA;AAAA,QAAA,gCACE,MAAK,EAAA,gBAAe,UACnB,UAAA,oBAAC,UAAQ,UAAc,cAAA,EAAE,IAAI,yBAA0B,CAAA,GAAE,EAAA,CAC3D,IAEA,oBAAC,gBAAa,WAAsB;AAAA,6BAErC,MACC,EAAA,UAAA;AAAA,UAAA,oBAAC,aAAY,EAAA;AAAA,8BACZ,KAAI,EAAA,aAAa,GAAG,cAAc,GACjC,8BAAC,YAAW,EAAA,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA,EAAE,IAAI,KAAK,CAAC,EAC7B,CAAA,GACF;AAAA,8BACC,aAAY,EAAA;AAAA,QAAA,GACf;AAAA,QACC,oBAAA,QAAA,EAAO,WAAS,MAAC,MAAK,KAAI,SAAS,aACjC,UAAc,cAAA,EAAE,IAAI,gCAAA,CAAiC,EACxD,CAAA;AAAA,MAAA,GACF;AAAA,IAAA,GACF;AAAA,IACA,oBAAC,MAAK,EAAA,gBAAe,UACnB,UAAA,oBAAC,KAAI,EAAA,YAAY,GAEf,UAAA,oBAAC,MAAK,EAAA,IAAI,SAAS,IAAG,yBACpB,UAAC,oBAAA,YAAA,EAAW,SAAQ,MACjB,UAAc,cAAA,EAAE,IAAI,4BAA6B,CAAA,EACpD,CAAA,EACF,CAAA,EACF,CAAA,GACF;AAAA,EAAA,EACF,CAAA,EACF,CAAA;AAEJ;AAEA,MAAM,cAAc,OAAO,OAAO;AAAA;AAAA;AC3F3B,MAAM,QAAQ;AAAA,EACnB,WAAW;AACb;"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const schema = require("./schema-
|
|
3
|
+
const schema = require("./schema-e3080441.js");
|
|
4
4
|
const constants = require("./constants-d5d67ca8.js");
|
|
5
5
|
require("react");
|
|
6
6
|
require("react-dnd");
|
|
7
7
|
require("@reduxjs/toolkit");
|
|
8
|
-
require("./index-
|
|
8
|
+
require("./index-133699a3.js");
|
|
9
9
|
require("react/jsx-runtime");
|
|
10
10
|
require("@strapi/helper-plugin");
|
|
11
11
|
require("react-dom/client");
|
|
@@ -82,4 +82,4 @@ const REVIEW_WORKFLOW_COLUMNS_EE = [
|
|
|
82
82
|
}
|
|
83
83
|
];
|
|
84
84
|
exports.REVIEW_WORKFLOW_COLUMNS_EE = REVIEW_WORKFLOW_COLUMNS_EE;
|
|
85
|
-
//# sourceMappingURL=constants-
|
|
85
|
+
//# sourceMappingURL=constants-88f9d2a0.js.map
|