@strapi/admin 5.7.0 → 5.8.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.
Files changed (166) hide show
  1. package/dist/admin/{ApplicationInfoPage-Cx9Z4tfk.js → ApplicationInfoPage-B0M9e53i.js} +2 -2
  2. package/dist/admin/{ApplicationInfoPage-Cx9Z4tfk.js.map → ApplicationInfoPage-B0M9e53i.js.map} +1 -1
  3. package/dist/admin/{ApplicationInfoPage-BlX64-1T.mjs → ApplicationInfoPage-aVyIi07O.mjs} +2 -2
  4. package/dist/admin/{ApplicationInfoPage-BlX64-1T.mjs.map → ApplicationInfoPage-aVyIi07O.mjs.map} +1 -1
  5. package/dist/admin/{AuthenticatedLayout-CCwt0AgG.js → AuthenticatedLayout-BjJpEjNZ.js} +11 -18
  6. package/dist/admin/AuthenticatedLayout-BjJpEjNZ.js.map +1 -0
  7. package/dist/admin/{AuthenticatedLayout-Br8Ujef5.mjs → AuthenticatedLayout-DsYL-HcK.mjs} +11 -18
  8. package/dist/admin/AuthenticatedLayout-DsYL-HcK.mjs.map +1 -0
  9. package/dist/admin/{CreatePage-CaMDsF7E.mjs → CreatePage-B_Re-oPl.mjs} +2 -2
  10. package/dist/admin/{CreatePage-CaMDsF7E.mjs.map → CreatePage-B_Re-oPl.mjs.map} +1 -1
  11. package/dist/admin/{CreatePage-DtK2k2xj.js → CreatePage-EE0_R3n6.js} +2 -2
  12. package/dist/admin/{CreatePage-DtK2k2xj.js.map → CreatePage-EE0_R3n6.js.map} +1 -1
  13. package/dist/admin/{CreatePage-cPI93IzV.mjs → CreatePage-IEVSQY2h.mjs} +2 -2
  14. package/dist/admin/{CreatePage-cPI93IzV.mjs.map → CreatePage-IEVSQY2h.mjs.map} +1 -1
  15. package/dist/admin/{CreatePage-Je194jpQ.js → CreatePage-zsW9odS6.js} +2 -2
  16. package/dist/admin/{CreatePage-Je194jpQ.js.map → CreatePage-zsW9odS6.js.map} +1 -1
  17. package/dist/admin/{CreateView-CKHDAAe9.js → CreateView-BGpCDPXj.js} +2 -2
  18. package/dist/admin/{CreateView-CKHDAAe9.js.map → CreateView-BGpCDPXj.js.map} +1 -1
  19. package/dist/admin/{CreateView-CYk_dMMs.mjs → CreateView-BHtXcu27.mjs} +2 -2
  20. package/dist/admin/{CreateView-CYk_dMMs.mjs.map → CreateView-BHtXcu27.mjs.map} +1 -1
  21. package/dist/admin/{CreateView-CYhJZ4SU.mjs → CreateView-BNOzjjRc.mjs} +2 -2
  22. package/dist/admin/{CreateView-CYhJZ4SU.mjs.map → CreateView-BNOzjjRc.mjs.map} +1 -1
  23. package/dist/admin/{CreateView-CV1T_FkK.js → CreateView-BTXvxkFV.js} +2 -2
  24. package/dist/admin/{CreateView-CV1T_FkK.js.map → CreateView-BTXvxkFV.js.map} +1 -1
  25. package/dist/admin/{EditPage-f8LeUPW3.js → EditPage-B0kX3s-Z.js} +5 -5
  26. package/dist/admin/{EditPage-f8LeUPW3.js.map → EditPage-B0kX3s-Z.js.map} +1 -1
  27. package/dist/admin/{EditPage-DPnF8khi.js → EditPage-CforD3Iz.js} +3 -3
  28. package/dist/admin/{EditPage-DPnF8khi.js.map → EditPage-CforD3Iz.js.map} +1 -1
  29. package/dist/admin/{EditPage-DTaqqKhx.mjs → EditPage-D74Thmgb.mjs} +5 -5
  30. package/dist/admin/{EditPage-DTaqqKhx.mjs.map → EditPage-D74Thmgb.mjs.map} +1 -1
  31. package/dist/admin/{EditPage-qRfveoLn.mjs → EditPage-DtpFz8q_.mjs} +3 -3
  32. package/dist/admin/{EditPage-qRfveoLn.mjs.map → EditPage-DtpFz8q_.mjs.map} +1 -1
  33. package/dist/admin/{EditPage-CZPAEYlB.mjs → EditPage-SLJqT_07.mjs} +3 -3
  34. package/dist/admin/{EditPage-CZPAEYlB.mjs.map → EditPage-SLJqT_07.mjs.map} +1 -1
  35. package/dist/admin/{EditPage-e1MbaksH.js → EditPage-Y_u38oRX.js} +3 -3
  36. package/dist/admin/{EditPage-e1MbaksH.js.map → EditPage-Y_u38oRX.js.map} +1 -1
  37. package/dist/admin/{EditView-Df6PVPAd.mjs → EditView-B9vhQ5Mb.mjs} +3 -3
  38. package/dist/admin/{EditView-Df6PVPAd.mjs.map → EditView-B9vhQ5Mb.mjs.map} +1 -1
  39. package/dist/admin/{EditView-IrrSxD_e.js → EditView-DSG9f2_X.js} +3 -3
  40. package/dist/admin/{EditView-IrrSxD_e.js.map → EditView-DSG9f2_X.js.map} +1 -1
  41. package/dist/admin/{EditViewPage-BKnY-1Sj.mjs → EditViewPage-BKZVv2xl.mjs} +3 -3
  42. package/dist/admin/{EditViewPage-BKnY-1Sj.mjs.map → EditViewPage-BKZVv2xl.mjs.map} +1 -1
  43. package/dist/admin/{EditViewPage-BNzM51al.js → EditViewPage-BYeb54F7.js} +3 -3
  44. package/dist/admin/{EditViewPage-BNzM51al.js.map → EditViewPage-BYeb54F7.js.map} +1 -1
  45. package/dist/admin/{EventsTable-DUz7EZyi.mjs → EventsTable-G5_OCPX0.mjs} +2 -2
  46. package/dist/admin/{EventsTable-DUz7EZyi.mjs.map → EventsTable-G5_OCPX0.mjs.map} +1 -1
  47. package/dist/admin/{EventsTable-fqzWSspG.js → EventsTable-qVACeDDR.js} +2 -2
  48. package/dist/admin/{EventsTable-fqzWSspG.js.map → EventsTable-qVACeDDR.js.map} +1 -1
  49. package/dist/admin/{HomePage-NPjXohKj.mjs → HomePage-2i76QRPt.mjs} +4 -3
  50. package/dist/admin/HomePage-2i76QRPt.mjs.map +1 -0
  51. package/dist/admin/{HomePage-HuAhOTRQ.mjs → HomePage-BXZOxI_s.mjs} +2 -2
  52. package/dist/admin/{HomePage-HuAhOTRQ.mjs.map → HomePage-BXZOxI_s.mjs.map} +1 -1
  53. package/dist/admin/{HomePage-BcZ8G5Zk.js → HomePage-COOkRiQg.js} +4 -3
  54. package/dist/admin/HomePage-COOkRiQg.js.map +1 -0
  55. package/dist/admin/{HomePage-DAKopsM1.js → HomePage-CW2qIdcM.js} +2 -2
  56. package/dist/admin/{HomePage-DAKopsM1.js.map → HomePage-CW2qIdcM.js.map} +1 -1
  57. package/dist/admin/{InstalledPlugins-BDBDHjp1.mjs → InstalledPlugins-Benx8Uh1.mjs} +2 -2
  58. package/dist/admin/{InstalledPlugins-BDBDHjp1.mjs.map → InstalledPlugins-Benx8Uh1.mjs.map} +1 -1
  59. package/dist/admin/{InstalledPlugins-OsZRe2Mj.js → InstalledPlugins-C4nAuJ8Y.js} +2 -2
  60. package/dist/admin/{InstalledPlugins-OsZRe2Mj.js.map → InstalledPlugins-C4nAuJ8Y.js.map} +1 -1
  61. package/dist/admin/{Layout-ZnQ6qK04.mjs → Layout-BWGCGBsV.mjs} +3 -3
  62. package/dist/admin/{Layout-ZnQ6qK04.mjs.map → Layout-BWGCGBsV.mjs.map} +1 -1
  63. package/dist/admin/{Layout-BmPlcHQy.js → Layout-DatEVLQR.js} +3 -3
  64. package/dist/admin/{Layout-BmPlcHQy.js.map → Layout-DatEVLQR.js.map} +1 -1
  65. package/dist/admin/{ListPage-xSonCT19.js → ListPage-Bf_9cKue.js} +3 -3
  66. package/dist/admin/{ListPage-xSonCT19.js.map → ListPage-Bf_9cKue.js.map} +1 -1
  67. package/dist/admin/{ListPage-C0iLSqYo.mjs → ListPage-C2Zxn580.mjs} +2 -2
  68. package/dist/admin/{ListPage-C0iLSqYo.mjs.map → ListPage-C2Zxn580.mjs.map} +1 -1
  69. package/dist/admin/{ListPage-B_XyFDAF.mjs → ListPage-CKv2NaQ9.mjs} +3 -3
  70. package/dist/admin/{ListPage-B_XyFDAF.mjs.map → ListPage-CKv2NaQ9.mjs.map} +1 -1
  71. package/dist/admin/{ListPage-Da_2kaB7.mjs → ListPage-CMqjOZ7N.mjs} +5 -5
  72. package/dist/admin/{ListPage-Da_2kaB7.mjs.map → ListPage-CMqjOZ7N.mjs.map} +1 -1
  73. package/dist/admin/{ListPage-BoJnuSeZ.js → ListPage-COoU5bb7.js} +2 -2
  74. package/dist/admin/{ListPage-BoJnuSeZ.js.map → ListPage-COoU5bb7.js.map} +1 -1
  75. package/dist/admin/{ListPage-BVk9Y9nA.js → ListPage-CbqVo8Ha.js} +2 -2
  76. package/dist/admin/{ListPage-BVk9Y9nA.js.map → ListPage-CbqVo8Ha.js.map} +1 -1
  77. package/dist/admin/{ListPage-YvkZI4Dz.mjs → ListPage-Cz_C6BH6.mjs} +2 -2
  78. package/dist/admin/{ListPage-YvkZI4Dz.mjs.map → ListPage-Cz_C6BH6.mjs.map} +1 -1
  79. package/dist/admin/{ListPage-Bu63qBzy.mjs → ListPage-DIYR9xsf.mjs} +2 -2
  80. package/dist/admin/{ListPage-Bu63qBzy.mjs.map → ListPage-DIYR9xsf.mjs.map} +1 -1
  81. package/dist/admin/{ListPage-6TiKw8tv.js → ListPage-DPseYP36.js} +2 -2
  82. package/dist/admin/{ListPage-6TiKw8tv.js.map → ListPage-DPseYP36.js.map} +1 -1
  83. package/dist/admin/{ListPage-CtOOlqCn.js → ListPage-ilOm8MjS.js} +5 -5
  84. package/dist/admin/{ListPage-CtOOlqCn.js.map → ListPage-ilOm8MjS.js.map} +1 -1
  85. package/dist/admin/{ListView-CMiSzy7H.mjs → ListView-BTTG_x8F.mjs} +3 -3
  86. package/dist/admin/{ListView-CMiSzy7H.mjs.map → ListView-BTTG_x8F.mjs.map} +1 -1
  87. package/dist/admin/{ListView-DhZFpqcJ.mjs → ListView-DbP0037U.mjs} +3 -3
  88. package/dist/admin/{ListView-DhZFpqcJ.mjs.map → ListView-DbP0037U.mjs.map} +1 -1
  89. package/dist/admin/{ListView-CeE2Qlyi.js → ListView-DdKrxGIw.js} +3 -3
  90. package/dist/admin/{ListView-CeE2Qlyi.js.map → ListView-DdKrxGIw.js.map} +1 -1
  91. package/dist/admin/{ListView-Cr_P57s2.js → ListView-Del29648.js} +3 -3
  92. package/dist/admin/{ListView-Cr_P57s2.js.map → ListView-Del29648.js.map} +1 -1
  93. package/dist/admin/{Login-CKEdHx7A.mjs → Login-BoikVDyr.mjs} +2 -2
  94. package/dist/admin/{Login-CKEdHx7A.mjs.map → Login-BoikVDyr.mjs.map} +1 -1
  95. package/dist/admin/{Login-B-e6bger.js → Login-CVzNtpUR.js} +2 -2
  96. package/dist/admin/{Login-B-e6bger.js.map → Login-CVzNtpUR.js.map} +1 -1
  97. package/dist/admin/{MagicLinkEE-DCazf_P2.mjs → MagicLinkEE-B9V4J65J.mjs} +3 -3
  98. package/dist/admin/{MagicLinkEE-DCazf_P2.mjs.map → MagicLinkEE-B9V4J65J.mjs.map} +1 -1
  99. package/dist/admin/{MagicLinkEE-DYCH6Jl2.js → MagicLinkEE-ZQ2hJhTG.js} +3 -3
  100. package/dist/admin/{MagicLinkEE-DYCH6Jl2.js.map → MagicLinkEE-ZQ2hJhTG.js.map} +1 -1
  101. package/dist/admin/{MarketplacePage-DeH9a207.js → MarketplacePage-De0t4BV_.js} +2 -2
  102. package/dist/admin/{MarketplacePage-DeH9a207.js.map → MarketplacePage-De0t4BV_.js.map} +1 -1
  103. package/dist/admin/{MarketplacePage-CTbE4SlU.mjs → MarketplacePage-Dz_9Jb5l.mjs} +2 -2
  104. package/dist/admin/{MarketplacePage-CTbE4SlU.mjs.map → MarketplacePage-Dz_9Jb5l.mjs.map} +1 -1
  105. package/dist/admin/{ProfilePage-Bcb_ayAW.mjs → ProfilePage-DACdWESp.mjs} +3 -3
  106. package/dist/admin/{ProfilePage-Bcb_ayAW.mjs.map → ProfilePage-DACdWESp.mjs.map} +1 -1
  107. package/dist/admin/{ProfilePage-CD0uiMaE.js → ProfilePage-DD6_Ogzc.js} +3 -3
  108. package/dist/admin/{ProfilePage-CD0uiMaE.js.map → ProfilePage-DD6_Ogzc.js.map} +1 -1
  109. package/dist/admin/{PurchaseAuditLogs-CHKqdqrY.js → PurchaseAuditLogs-C88Ok0ro.js} +2 -2
  110. package/dist/admin/{PurchaseAuditLogs-CHKqdqrY.js.map → PurchaseAuditLogs-C88Ok0ro.js.map} +1 -1
  111. package/dist/admin/{PurchaseAuditLogs-D9V7WucM.mjs → PurchaseAuditLogs-D8bpEH-Z.mjs} +2 -2
  112. package/dist/admin/{PurchaseAuditLogs-D9V7WucM.mjs.map → PurchaseAuditLogs-D8bpEH-Z.mjs.map} +1 -1
  113. package/dist/admin/{PurchaseContentHistory-CtiF0HJP.mjs → PurchaseContentHistory-6nW4Z71X.mjs} +2 -2
  114. package/dist/admin/{PurchaseContentHistory-CtiF0HJP.mjs.map → PurchaseContentHistory-6nW4Z71X.mjs.map} +1 -1
  115. package/dist/admin/{PurchaseContentHistory-eOg1pQvg.js → PurchaseContentHistory-FNKV1cGO.js} +2 -2
  116. package/dist/admin/{PurchaseContentHistory-eOg1pQvg.js.map → PurchaseContentHistory-FNKV1cGO.js.map} +1 -1
  117. package/dist/admin/{PurchaseSingleSignOn-C4Mthjnp.js → PurchaseSingleSignOn-BFkrp_Cg.js} +2 -2
  118. package/dist/admin/{PurchaseSingleSignOn-C4Mthjnp.js.map → PurchaseSingleSignOn-BFkrp_Cg.js.map} +1 -1
  119. package/dist/admin/{PurchaseSingleSignOn-Dfg-RTXq.mjs → PurchaseSingleSignOn-Bw-sM48N.mjs} +2 -2
  120. package/dist/admin/{PurchaseSingleSignOn-Dfg-RTXq.mjs.map → PurchaseSingleSignOn-Bw-sM48N.mjs.map} +1 -1
  121. package/dist/admin/{SelectRoles-D1xPS-qt.mjs → SelectRoles-B44wjNZ_.mjs} +3 -3
  122. package/dist/admin/{SelectRoles-D1xPS-qt.mjs.map → SelectRoles-B44wjNZ_.mjs.map} +1 -1
  123. package/dist/admin/{SelectRoles-DIyUH00-.js → SelectRoles-BOmnBV7r.js} +3 -3
  124. package/dist/admin/{SelectRoles-DIyUH00-.js.map → SelectRoles-BOmnBV7r.js.map} +1 -1
  125. package/dist/admin/{SingleSignOnPage-BNuYGkeX.js → SingleSignOnPage-BpQGdg6E.js} +3 -3
  126. package/dist/admin/{SingleSignOnPage-BNuYGkeX.js.map → SingleSignOnPage-BpQGdg6E.js.map} +1 -1
  127. package/dist/admin/{SingleSignOnPage-BC2aTKy7.mjs → SingleSignOnPage-oTBybRcW.mjs} +3 -3
  128. package/dist/admin/{SingleSignOnPage-BC2aTKy7.mjs.map → SingleSignOnPage-oTBybRcW.mjs.map} +1 -1
  129. package/dist/admin/{Table-DQnLoM7I.mjs → Table-B2jE20Vz.mjs} +2 -2
  130. package/dist/admin/{Table-DQnLoM7I.mjs.map → Table-B2jE20Vz.mjs.map} +1 -1
  131. package/dist/admin/{Table-7pe1j4im.js → Table-DO0n_ZiM.js} +2 -2
  132. package/dist/admin/{Table-7pe1j4im.js.map → Table-DO0n_ZiM.js.map} +1 -1
  133. package/dist/admin/{TokenTypeSelect-ZzXED7rf.js → TokenTypeSelect-0Wj2_vbY.js} +2 -2
  134. package/dist/admin/{TokenTypeSelect-ZzXED7rf.js.map → TokenTypeSelect-0Wj2_vbY.js.map} +1 -1
  135. package/dist/admin/{TokenTypeSelect-CTdltdS8.mjs → TokenTypeSelect-CwFA3OJI.mjs} +2 -2
  136. package/dist/admin/{TokenTypeSelect-CTdltdS8.mjs.map → TokenTypeSelect-CwFA3OJI.mjs.map} +1 -1
  137. package/dist/admin/{UseCasePage-BqAoX3j-.mjs → UseCasePage-6yB7tChk.mjs} +2 -2
  138. package/dist/admin/{UseCasePage-BqAoX3j-.mjs.map → UseCasePage-6yB7tChk.mjs.map} +1 -1
  139. package/dist/admin/{UseCasePage-iNVoVcCb.js → UseCasePage-Be3TSl0e.js} +2 -2
  140. package/dist/admin/{UseCasePage-iNVoVcCb.js.map → UseCasePage-Be3TSl0e.js.map} +1 -1
  141. package/dist/admin/{constants-BtdWKFzN.js → constants-BRKJB6nE.js} +2 -2
  142. package/dist/admin/{constants-BtdWKFzN.js.map → constants-BRKJB6nE.js.map} +1 -1
  143. package/dist/admin/{constants-TZNepYft.mjs → constants-CZbP9udc.mjs} +2 -2
  144. package/dist/admin/{constants-TZNepYft.mjs.map → constants-CZbP9udc.mjs.map} +1 -1
  145. package/dist/admin/{index-CMdgTmC0.mjs → index-D4QvcqXm.mjs} +33 -33
  146. package/dist/admin/index-D4QvcqXm.mjs.map +1 -0
  147. package/dist/admin/{index-DxMAHgtc.js → index-DwA5cbf6.js} +33 -33
  148. package/dist/admin/index-DwA5cbf6.js.map +1 -0
  149. package/dist/admin/index.js +1 -1
  150. package/dist/admin/index.mjs +1 -1
  151. package/dist/admin/{useAdminRoles-BVwapBge.mjs → useAdminRoles-BuTW6fsO.mjs} +2 -2
  152. package/dist/admin/{useAdminRoles-BVwapBge.mjs.map → useAdminRoles-BuTW6fsO.mjs.map} +1 -1
  153. package/dist/admin/{useAdminRoles-DVnFvP_o.js → useAdminRoles-DR7Z7fl5.js} +2 -2
  154. package/dist/admin/{useAdminRoles-DVnFvP_o.js.map → useAdminRoles-DR7Z7fl5.js.map} +1 -1
  155. package/dist/admin/{validation-D36pWUQH.mjs → validation-7txYW34r.mjs} +2 -2
  156. package/dist/admin/{validation-D36pWUQH.mjs.map → validation-7txYW34r.mjs.map} +1 -1
  157. package/dist/admin/{validation-CV2jBW7t.js → validation-CtWmg9nr.js} +2 -2
  158. package/dist/admin/{validation-CV2jBW7t.js.map → validation-CtWmg9nr.js.map} +1 -1
  159. package/dist/package.json.d.ts +7 -7
  160. package/package.json +7 -7
  161. package/dist/admin/AuthenticatedLayout-Br8Ujef5.mjs.map +0 -1
  162. package/dist/admin/AuthenticatedLayout-CCwt0AgG.js.map +0 -1
  163. package/dist/admin/HomePage-BcZ8G5Zk.js.map +0 -1
  164. package/dist/admin/HomePage-NPjXohKj.mjs.map +0 -1
  165. package/dist/admin/index-CMdgTmC0.mjs.map +0 -1
  166. package/dist/admin/index-DxMAHgtc.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TokenTypeSelect-CTdltdS8.mjs","sources":["../../admin/src/pages/Settings/components/Tokens/FormHead.tsx","../../admin/src/pages/Settings/components/Tokens/TokenBox.tsx","../../admin/src/utils/locales.ts","../../admin/src/pages/Settings/pages/ApiTokens/EditView/utils/getDateOfExpiration.ts","../../admin/src/pages/Settings/utils/forms.ts","../../admin/src/pages/Settings/components/Tokens/LifeSpanInput.tsx","../../admin/src/pages/Settings/components/Tokens/TokenDescription.tsx","../../admin/src/pages/Settings/components/Tokens/TokenName.tsx","../../admin/src/pages/Settings/components/Tokens/TokenTypeSelect.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, Dialog, Flex } from '@strapi/design-system';\nimport { Check, ArrowClockwise } from '@strapi/icons';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRegenerateTokenMutation } from '../../../../services/transferTokens';\n\nimport type { Data } from '@strapi/types';\n\ninterface RegenerateProps {\n onRegenerate?: (newKey: string) => void;\n url: string;\n}\n\nconst Regenerate = ({ onRegenerate, url }: RegenerateProps) => {\n const { formatMessage } = useIntl();\n const [showConfirmDialog, setShowConfirmDialog] = React.useState(false);\n\n const [isLoadingConfirmation, setIsLoadingConfirmation] = React.useState(false);\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const [regenerateToken] = useRegenerateTokenMutation();\n\n const regenerateData = async () => {\n try {\n const res = await regenerateToken(url);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n if (onRegenerate) {\n onRegenerate(res.data.accessKey);\n }\n } catch (error) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'Something went wrong',\n }),\n });\n } finally {\n setIsLoadingConfirmation(false);\n }\n };\n\n const handleConfirmRegeneration = async () => {\n regenerateData();\n setShowConfirmDialog(false);\n };\n\n return (\n <Dialog.Root open={showConfirmDialog} onOpenChange={setShowConfirmDialog}>\n <Dialog.Trigger>\n <Button\n startIcon={<ArrowClockwise />}\n type=\"button\"\n size=\"S\"\n variant=\"tertiary\"\n onClick={() => setShowConfirmDialog(true)}\n name=\"regenerate\"\n >\n {formatMessage({\n id: 'Settings.tokens.regenerate',\n defaultMessage: 'Regenerate',\n })}\n </Button>\n </Dialog.Trigger>\n\n <ConfirmDialog\n title={formatMessage({\n id: 'Settings.tokens.RegenerateDialog.title',\n defaultMessage: 'Regenerate token',\n })}\n endAction={\n <Button\n startIcon={<ArrowClockwise />}\n loading={isLoadingConfirmation}\n onClick={handleConfirmRegeneration}\n >\n {formatMessage({\n id: 'Settings.tokens.Button.regenerate',\n defaultMessage: 'Regenerate',\n })}\n </Button>\n }\n >\n {formatMessage({\n id: 'Settings.tokens.popUpWarning.message',\n defaultMessage: 'Are you sure you want to regenerate this token?',\n })}\n </ConfirmDialog>\n </Dialog.Root>\n );\n};\n\ninterface Token {\n id: Data.ID;\n name: string;\n}\n\ninterface FormHeadProps<TToken extends Token | null> {\n title: MessageDescriptor;\n token: TToken;\n canEditInputs: boolean;\n canRegenerate: boolean;\n setToken: (token: TToken) => void;\n isSubmitting: boolean;\n regenerateUrl: string;\n}\n\nexport const FormHead = <TToken extends Token | null>({\n title,\n token,\n setToken,\n canEditInputs,\n canRegenerate,\n isSubmitting,\n regenerateUrl,\n}: FormHeadProps<TToken>) => {\n const { formatMessage } = useIntl();\n const handleRegenerate = (newKey: string) => {\n setToken({\n ...token,\n accessKey: newKey,\n });\n };\n\n return (\n <Layouts.Header\n title={token?.name || formatMessage(title)}\n primaryAction={\n canEditInputs ? (\n <Flex gap={2}>\n {canRegenerate && token?.id && (\n <Regenerate\n onRegenerate={handleRegenerate}\n url={`${regenerateUrl}${token?.id ?? ''}`}\n />\n )}\n <Button\n disabled={isSubmitting}\n loading={isSubmitting}\n startIcon={<Check />}\n type=\"submit\"\n size=\"S\"\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n ) : (\n canRegenerate &&\n token?.id && (\n <Regenerate\n onRegenerate={handleRegenerate}\n url={`${regenerateUrl}${token?.id ?? ''}`}\n />\n )\n )\n }\n navigationAction={<BackButton />}\n ellipsis\n />\n );\n};\n","import { IconButton } from '@strapi/design-system';\nimport { Duplicate, Key } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { ContentBox } from '../../../../components/ContentBox';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useClipboard } from '../../../../hooks/useClipboard';\n\ninterface TokenBoxProps {\n token?: string;\n tokenType: 'transfer-token' | 'api-token';\n}\n\nexport const TokenBox = ({ token, tokenType }: TokenBoxProps) => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { trackUsage } = useTracking();\n\n const { copy } = useClipboard();\n\n const handleClick = (token: TokenBoxProps['token']) => async () => {\n if (token) {\n const didCopy = await copy(token);\n\n if (didCopy) {\n trackUsage('didCopyTokenKey', {\n tokenType,\n });\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'Settings.tokens.notification.copied' }),\n });\n }\n }\n };\n\n return (\n <ContentBox\n endAction={\n token && (\n <span style={{ alignSelf: 'start' }}>\n <IconButton\n label={formatMessage({\n id: 'app.component.CopyToClipboard.label',\n defaultMessage: 'Copy to clipboard',\n })}\n onClick={handleClick(token)}\n variant=\"ghost\"\n type=\"button\"\n style={{ padding: 0, height: '1.6rem' }}\n >\n <Duplicate />\n </IconButton>\n </span>\n )\n }\n title={\n token ||\n formatMessage({\n id: 'Settings.tokens.copy.editTitle',\n defaultMessage: 'This token isn’t accessible anymore.',\n })\n }\n subtitle={\n token\n ? formatMessage({\n id: 'Settings.tokens.copy.lastWarning',\n defaultMessage: 'Make sure to copy this token, you won’t be able to see it again!',\n })\n : formatMessage({\n id: 'Settings.tokens.copy.editMessage',\n defaultMessage: 'For security reasons, you can only see your token once.',\n })\n }\n icon={<Key />}\n iconBackground=\"neutral100\"\n />\n );\n};\n","import * as locales from 'date-fns/locale';\n\ntype LocaleName = keyof typeof locales;\n\n/**\n * Returns a valid date-fns locale name from a Strapi Admin locale.\n * Defaults to 'enUS' if the locale is not found.\n */\nconst getDateFnsLocaleName = (locale: string): LocaleName => {\n if (Object.keys(locales).includes(locale)) {\n return locale as LocaleName;\n }\n\n return 'enUS';\n};\n\nexport { getDateFnsLocaleName };\n","import { addDays, format } from 'date-fns';\nimport * as locales from 'date-fns/locale';\n\nimport { getDateFnsLocaleName } from '../../../../../../utils/locales';\n\nexport const getDateOfExpiration = (\n createdAt: string,\n duration: number | null,\n language: string = 'en'\n) => {\n if (duration && typeof duration === 'number') {\n const durationInDays = duration / 24 / 60 / 60 / 1000;\n\n return format(addDays(new Date(createdAt), durationInDays), 'PPP', {\n locale: locales[getDateFnsLocaleName(language)],\n });\n }\n\n return 'Unlimited';\n};\n","import { MessageDescriptor } from 'react-intl';\n\nconst isErrorMessageMessageDescriptor = (\n message: string | MessageDescriptor\n): message is MessageDescriptor => {\n return typeof message === 'object' && message !== null && 'id' in message;\n};\n\nexport { isErrorMessageMessageDescriptor };\n","import { SingleSelectOption, SingleSelect, Typography, Field } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { getDateOfExpiration } from '../../pages/ApiTokens/EditView/utils/getDateOfExpiration';\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\nimport type { ApiToken } from '../../../../../../shared/contracts/api-token';\nimport type { TransferToken } from '../../../../../../shared/contracts/transfer';\n\ninterface LifeSpanInputProps {\n error?: string | MessageDescriptor;\n value?: string | number | null;\n onChange: (event: { target: { name: string; value: string } }) => void;\n isCreating: boolean;\n token: Partial<TransferToken> | Partial<ApiToken> | null;\n}\n\nexport const LifeSpanInput = ({\n token,\n error,\n value,\n onChange,\n isCreating,\n}: LifeSpanInputProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <>\n <Field.Root\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error)\n ? error\n : { id: error, defaultMessage: error }\n )\n : undefined\n }\n name=\"lifespan\"\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'Settings.tokens.form.duration',\n defaultMessage: 'Token duration',\n })}\n </Field.Label>\n <SingleSelect\n value={value}\n onChange={(value) => {\n // @ts-expect-error – DS v2 won't support number types for select\n onChange({ target: { name: 'lifespan', value } });\n }}\n disabled={!isCreating}\n placeholder=\"Select\"\n >\n <SingleSelectOption value=\"604800000\">\n {formatMessage({\n id: 'Settings.tokens.duration.7-days',\n defaultMessage: '7 days',\n })}\n </SingleSelectOption>\n <SingleSelectOption value=\"2592000000\">\n {formatMessage({\n id: 'Settings.tokens.duration.30-days',\n defaultMessage: '30 days',\n })}\n </SingleSelectOption>\n <SingleSelectOption value=\"7776000000\">\n {formatMessage({\n id: 'Settings.tokens.duration.90-days',\n defaultMessage: '90 days',\n })}\n </SingleSelectOption>\n <SingleSelectOption value=\"0\">\n {formatMessage({\n id: 'Settings.tokens.duration.unlimited',\n defaultMessage: 'Unlimited',\n })}\n </SingleSelectOption>\n </SingleSelect>\n <Field.Error />\n </Field.Root>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {!isCreating &&\n `${formatMessage({\n id: 'Settings.tokens.duration.expiration-date',\n defaultMessage: 'Expiration date',\n // @ts-expect-error – TODO: fix this.\n })}: ${getDateOfExpiration(token?.createdAt, parseInt(value ?? '', 10))}`}\n </Typography>\n </>\n );\n};\n","import { Field, Textarea, TextareaProps } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\ninterface TokenDescriptionProps extends Pick<TextareaProps, 'onChange' | 'value'> {\n error?: string | MessageDescriptor;\n canEditInputs: boolean;\n}\n\nexport const TokenDescription = ({\n error,\n value,\n onChange,\n canEditInputs,\n}: TokenDescriptionProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Field.Root\n name=\"description\"\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error)\n ? error\n : {\n id: error,\n defaultMessage: error,\n }\n )\n : undefined\n }\n >\n <Field.Label>\n {formatMessage({\n id: 'Settings.tokens.form.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea onChange={onChange} disabled={!canEditInputs} value={value} />\n <Field.Error />\n </Field.Root>\n );\n};\n","import { Field, TextInput, TextInputProps } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\ninterface TokenNameProps extends Pick<TextInputProps, 'onChange' | 'value'> {\n error?: string | MessageDescriptor;\n canEditInputs: boolean;\n}\n\nexport const TokenName = ({ error, value, onChange, canEditInputs }: TokenNameProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Field.Root\n name=\"name\"\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error) ? error : { id: error, defaultMessage: error }\n )\n : undefined\n }\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'Settings.tokens.form.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput onChange={onChange} value={value} disabled={!canEditInputs} />\n <Field.Error />\n </Field.Root>\n );\n};\n","import { SingleSelectOption, SingleSelect, SingleSelectProps, Field } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\ninterface TokenTypeSelectProps extends Pick<SingleSelectProps, 'onChange' | 'value'> {\n name?: string;\n options: Array<{\n label: MessageDescriptor;\n value: string;\n }>;\n error?: string | MessageDescriptor;\n canEditInputs: boolean;\n label: MessageDescriptor;\n}\n\nexport const TokenTypeSelect = ({\n name = 'type',\n error,\n value,\n onChange,\n canEditInputs,\n options = [],\n label,\n}: TokenTypeSelectProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Field.Root\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error) ? error : { id: error, defaultMessage: error }\n )\n : undefined\n }\n name={name}\n required\n >\n <Field.Label>\n {formatMessage({\n id: label.id,\n defaultMessage: label.defaultMessage,\n })}\n </Field.Label>\n <SingleSelect\n value={value}\n onChange={onChange}\n placeholder=\"Select\"\n disabled={!canEditInputs}\n >\n {options &&\n options.map(({ value, label }) => (\n <SingleSelectOption key={value} value={value}>\n {formatMessage(label)}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Error />\n </Field.Root>\n );\n};\n"],"names":["token","value","label"],"mappings":"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"}
1
+ {"version":3,"file":"TokenTypeSelect-CwFA3OJI.mjs","sources":["../../admin/src/pages/Settings/components/Tokens/FormHead.tsx","../../admin/src/pages/Settings/components/Tokens/TokenBox.tsx","../../admin/src/utils/locales.ts","../../admin/src/pages/Settings/pages/ApiTokens/EditView/utils/getDateOfExpiration.ts","../../admin/src/pages/Settings/utils/forms.ts","../../admin/src/pages/Settings/components/Tokens/LifeSpanInput.tsx","../../admin/src/pages/Settings/components/Tokens/TokenDescription.tsx","../../admin/src/pages/Settings/components/Tokens/TokenName.tsx","../../admin/src/pages/Settings/components/Tokens/TokenTypeSelect.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Button, Dialog, Flex } from '@strapi/design-system';\nimport { Check, ArrowClockwise } from '@strapi/icons';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { ConfirmDialog } from '../../../../components/ConfirmDialog';\nimport { Layouts } from '../../../../components/Layouts/Layout';\nimport { BackButton } from '../../../../features/BackButton';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useAPIErrorHandler } from '../../../../hooks/useAPIErrorHandler';\nimport { useRegenerateTokenMutation } from '../../../../services/transferTokens';\n\nimport type { Data } from '@strapi/types';\n\ninterface RegenerateProps {\n onRegenerate?: (newKey: string) => void;\n url: string;\n}\n\nconst Regenerate = ({ onRegenerate, url }: RegenerateProps) => {\n const { formatMessage } = useIntl();\n const [showConfirmDialog, setShowConfirmDialog] = React.useState(false);\n\n const [isLoadingConfirmation, setIsLoadingConfirmation] = React.useState(false);\n const { toggleNotification } = useNotification();\n const { _unstableFormatAPIError: formatAPIError } = useAPIErrorHandler();\n\n const [regenerateToken] = useRegenerateTokenMutation();\n\n const regenerateData = async () => {\n try {\n const res = await regenerateToken(url);\n\n if ('error' in res) {\n toggleNotification({\n type: 'danger',\n message: formatAPIError(res.error),\n });\n\n return;\n }\n\n if (onRegenerate) {\n onRegenerate(res.data.accessKey);\n }\n } catch (error) {\n toggleNotification({\n type: 'danger',\n message: formatMessage({\n id: 'notification.error',\n defaultMessage: 'Something went wrong',\n }),\n });\n } finally {\n setIsLoadingConfirmation(false);\n }\n };\n\n const handleConfirmRegeneration = async () => {\n regenerateData();\n setShowConfirmDialog(false);\n };\n\n return (\n <Dialog.Root open={showConfirmDialog} onOpenChange={setShowConfirmDialog}>\n <Dialog.Trigger>\n <Button\n startIcon={<ArrowClockwise />}\n type=\"button\"\n size=\"S\"\n variant=\"tertiary\"\n onClick={() => setShowConfirmDialog(true)}\n name=\"regenerate\"\n >\n {formatMessage({\n id: 'Settings.tokens.regenerate',\n defaultMessage: 'Regenerate',\n })}\n </Button>\n </Dialog.Trigger>\n\n <ConfirmDialog\n title={formatMessage({\n id: 'Settings.tokens.RegenerateDialog.title',\n defaultMessage: 'Regenerate token',\n })}\n endAction={\n <Button\n startIcon={<ArrowClockwise />}\n loading={isLoadingConfirmation}\n onClick={handleConfirmRegeneration}\n >\n {formatMessage({\n id: 'Settings.tokens.Button.regenerate',\n defaultMessage: 'Regenerate',\n })}\n </Button>\n }\n >\n {formatMessage({\n id: 'Settings.tokens.popUpWarning.message',\n defaultMessage: 'Are you sure you want to regenerate this token?',\n })}\n </ConfirmDialog>\n </Dialog.Root>\n );\n};\n\ninterface Token {\n id: Data.ID;\n name: string;\n}\n\ninterface FormHeadProps<TToken extends Token | null> {\n title: MessageDescriptor;\n token: TToken;\n canEditInputs: boolean;\n canRegenerate: boolean;\n setToken: (token: TToken) => void;\n isSubmitting: boolean;\n regenerateUrl: string;\n}\n\nexport const FormHead = <TToken extends Token | null>({\n title,\n token,\n setToken,\n canEditInputs,\n canRegenerate,\n isSubmitting,\n regenerateUrl,\n}: FormHeadProps<TToken>) => {\n const { formatMessage } = useIntl();\n const handleRegenerate = (newKey: string) => {\n setToken({\n ...token,\n accessKey: newKey,\n });\n };\n\n return (\n <Layouts.Header\n title={token?.name || formatMessage(title)}\n primaryAction={\n canEditInputs ? (\n <Flex gap={2}>\n {canRegenerate && token?.id && (\n <Regenerate\n onRegenerate={handleRegenerate}\n url={`${regenerateUrl}${token?.id ?? ''}`}\n />\n )}\n <Button\n disabled={isSubmitting}\n loading={isSubmitting}\n startIcon={<Check />}\n type=\"submit\"\n size=\"S\"\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n </Flex>\n ) : (\n canRegenerate &&\n token?.id && (\n <Regenerate\n onRegenerate={handleRegenerate}\n url={`${regenerateUrl}${token?.id ?? ''}`}\n />\n )\n )\n }\n navigationAction={<BackButton />}\n ellipsis\n />\n );\n};\n","import { IconButton } from '@strapi/design-system';\nimport { Duplicate, Key } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { ContentBox } from '../../../../components/ContentBox';\nimport { useNotification } from '../../../../features/Notifications';\nimport { useTracking } from '../../../../features/Tracking';\nimport { useClipboard } from '../../../../hooks/useClipboard';\n\ninterface TokenBoxProps {\n token?: string;\n tokenType: 'transfer-token' | 'api-token';\n}\n\nexport const TokenBox = ({ token, tokenType }: TokenBoxProps) => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { trackUsage } = useTracking();\n\n const { copy } = useClipboard();\n\n const handleClick = (token: TokenBoxProps['token']) => async () => {\n if (token) {\n const didCopy = await copy(token);\n\n if (didCopy) {\n trackUsage('didCopyTokenKey', {\n tokenType,\n });\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'Settings.tokens.notification.copied' }),\n });\n }\n }\n };\n\n return (\n <ContentBox\n endAction={\n token && (\n <span style={{ alignSelf: 'start' }}>\n <IconButton\n label={formatMessage({\n id: 'app.component.CopyToClipboard.label',\n defaultMessage: 'Copy to clipboard',\n })}\n onClick={handleClick(token)}\n variant=\"ghost\"\n type=\"button\"\n style={{ padding: 0, height: '1.6rem' }}\n >\n <Duplicate />\n </IconButton>\n </span>\n )\n }\n title={\n token ||\n formatMessage({\n id: 'Settings.tokens.copy.editTitle',\n defaultMessage: 'This token isn’t accessible anymore.',\n })\n }\n subtitle={\n token\n ? formatMessage({\n id: 'Settings.tokens.copy.lastWarning',\n defaultMessage: 'Make sure to copy this token, you won’t be able to see it again!',\n })\n : formatMessage({\n id: 'Settings.tokens.copy.editMessage',\n defaultMessage: 'For security reasons, you can only see your token once.',\n })\n }\n icon={<Key />}\n iconBackground=\"neutral100\"\n />\n );\n};\n","import * as locales from 'date-fns/locale';\n\ntype LocaleName = keyof typeof locales;\n\n/**\n * Returns a valid date-fns locale name from a Strapi Admin locale.\n * Defaults to 'enUS' if the locale is not found.\n */\nconst getDateFnsLocaleName = (locale: string): LocaleName => {\n if (Object.keys(locales).includes(locale)) {\n return locale as LocaleName;\n }\n\n return 'enUS';\n};\n\nexport { getDateFnsLocaleName };\n","import { addDays, format } from 'date-fns';\nimport * as locales from 'date-fns/locale';\n\nimport { getDateFnsLocaleName } from '../../../../../../utils/locales';\n\nexport const getDateOfExpiration = (\n createdAt: string,\n duration: number | null,\n language: string = 'en'\n) => {\n if (duration && typeof duration === 'number') {\n const durationInDays = duration / 24 / 60 / 60 / 1000;\n\n return format(addDays(new Date(createdAt), durationInDays), 'PPP', {\n locale: locales[getDateFnsLocaleName(language)],\n });\n }\n\n return 'Unlimited';\n};\n","import { MessageDescriptor } from 'react-intl';\n\nconst isErrorMessageMessageDescriptor = (\n message: string | MessageDescriptor\n): message is MessageDescriptor => {\n return typeof message === 'object' && message !== null && 'id' in message;\n};\n\nexport { isErrorMessageMessageDescriptor };\n","import { SingleSelectOption, SingleSelect, Typography, Field } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { getDateOfExpiration } from '../../pages/ApiTokens/EditView/utils/getDateOfExpiration';\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\nimport type { ApiToken } from '../../../../../../shared/contracts/api-token';\nimport type { TransferToken } from '../../../../../../shared/contracts/transfer';\n\ninterface LifeSpanInputProps {\n error?: string | MessageDescriptor;\n value?: string | number | null;\n onChange: (event: { target: { name: string; value: string } }) => void;\n isCreating: boolean;\n token: Partial<TransferToken> | Partial<ApiToken> | null;\n}\n\nexport const LifeSpanInput = ({\n token,\n error,\n value,\n onChange,\n isCreating,\n}: LifeSpanInputProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <>\n <Field.Root\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error)\n ? error\n : { id: error, defaultMessage: error }\n )\n : undefined\n }\n name=\"lifespan\"\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'Settings.tokens.form.duration',\n defaultMessage: 'Token duration',\n })}\n </Field.Label>\n <SingleSelect\n value={value}\n onChange={(value) => {\n // @ts-expect-error – DS v2 won't support number types for select\n onChange({ target: { name: 'lifespan', value } });\n }}\n disabled={!isCreating}\n placeholder=\"Select\"\n >\n <SingleSelectOption value=\"604800000\">\n {formatMessage({\n id: 'Settings.tokens.duration.7-days',\n defaultMessage: '7 days',\n })}\n </SingleSelectOption>\n <SingleSelectOption value=\"2592000000\">\n {formatMessage({\n id: 'Settings.tokens.duration.30-days',\n defaultMessage: '30 days',\n })}\n </SingleSelectOption>\n <SingleSelectOption value=\"7776000000\">\n {formatMessage({\n id: 'Settings.tokens.duration.90-days',\n defaultMessage: '90 days',\n })}\n </SingleSelectOption>\n <SingleSelectOption value=\"0\">\n {formatMessage({\n id: 'Settings.tokens.duration.unlimited',\n defaultMessage: 'Unlimited',\n })}\n </SingleSelectOption>\n </SingleSelect>\n <Field.Error />\n </Field.Root>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {!isCreating &&\n `${formatMessage({\n id: 'Settings.tokens.duration.expiration-date',\n defaultMessage: 'Expiration date',\n // @ts-expect-error – TODO: fix this.\n })}: ${getDateOfExpiration(token?.createdAt, parseInt(value ?? '', 10))}`}\n </Typography>\n </>\n );\n};\n","import { Field, Textarea, TextareaProps } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\ninterface TokenDescriptionProps extends Pick<TextareaProps, 'onChange' | 'value'> {\n error?: string | MessageDescriptor;\n canEditInputs: boolean;\n}\n\nexport const TokenDescription = ({\n error,\n value,\n onChange,\n canEditInputs,\n}: TokenDescriptionProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Field.Root\n name=\"description\"\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error)\n ? error\n : {\n id: error,\n defaultMessage: error,\n }\n )\n : undefined\n }\n >\n <Field.Label>\n {formatMessage({\n id: 'Settings.tokens.form.description',\n defaultMessage: 'Description',\n })}\n </Field.Label>\n <Textarea onChange={onChange} disabled={!canEditInputs} value={value} />\n <Field.Error />\n </Field.Root>\n );\n};\n","import { Field, TextInput, TextInputProps } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\ninterface TokenNameProps extends Pick<TextInputProps, 'onChange' | 'value'> {\n error?: string | MessageDescriptor;\n canEditInputs: boolean;\n}\n\nexport const TokenName = ({ error, value, onChange, canEditInputs }: TokenNameProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Field.Root\n name=\"name\"\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error) ? error : { id: error, defaultMessage: error }\n )\n : undefined\n }\n required\n >\n <Field.Label>\n {formatMessage({\n id: 'Settings.tokens.form.name',\n defaultMessage: 'Name',\n })}\n </Field.Label>\n <TextInput onChange={onChange} value={value} disabled={!canEditInputs} />\n <Field.Error />\n </Field.Root>\n );\n};\n","import { SingleSelectOption, SingleSelect, SingleSelectProps, Field } from '@strapi/design-system';\nimport { MessageDescriptor, useIntl } from 'react-intl';\n\nimport { isErrorMessageMessageDescriptor } from '../../utils/forms';\n\ninterface TokenTypeSelectProps extends Pick<SingleSelectProps, 'onChange' | 'value'> {\n name?: string;\n options: Array<{\n label: MessageDescriptor;\n value: string;\n }>;\n error?: string | MessageDescriptor;\n canEditInputs: boolean;\n label: MessageDescriptor;\n}\n\nexport const TokenTypeSelect = ({\n name = 'type',\n error,\n value,\n onChange,\n canEditInputs,\n options = [],\n label,\n}: TokenTypeSelectProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <Field.Root\n error={\n error\n ? formatMessage(\n isErrorMessageMessageDescriptor(error) ? error : { id: error, defaultMessage: error }\n )\n : undefined\n }\n name={name}\n required\n >\n <Field.Label>\n {formatMessage({\n id: label.id,\n defaultMessage: label.defaultMessage,\n })}\n </Field.Label>\n <SingleSelect\n value={value}\n onChange={onChange}\n placeholder=\"Select\"\n disabled={!canEditInputs}\n >\n {options &&\n options.map(({ value, label }) => (\n <SingleSelectOption key={value} value={value}>\n {formatMessage(label)}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n <Field.Error />\n </Field.Root>\n );\n};\n"],"names":["token","value","label"],"mappings":"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"}
@@ -5,7 +5,7 @@ import { parse } from 'qs';
5
5
  import { useIntl } from 'react-intl';
6
6
  import { useLocation, useNavigate } from 'react-router-dom';
7
7
  import { P as PrivateRoute } from './PrivateRoute-DIxYvSni.mjs';
8
- import { U as UnauthenticatedLayout, L as LayoutContent, a as Logo } from './index-CMdgTmC0.mjs';
8
+ import { U as UnauthenticatedLayout, L as LayoutContent, a as Logo } from './index-D4QvcqXm.mjs';
9
9
  import { a as useNotification, u as useAuth } from './Theme-CTMU9Z8I.mjs';
10
10
 
11
11
  const options = [
@@ -132,4 +132,4 @@ const PrivateUseCasePage = () => {
132
132
  };
133
133
 
134
134
  export { PrivateUseCasePage, UseCasePage, options };
135
- //# sourceMappingURL=UseCasePage-BqAoX3j-.mjs.map
135
+ //# sourceMappingURL=UseCasePage-6yB7tChk.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"UseCasePage-BqAoX3j-.mjs","sources":["../../admin/src/pages/UseCasePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Main,\n SingleSelectOption,\n SingleSelect,\n TextButton,\n TextInput,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { parse } from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useNavigate } from 'react-router-dom';\n\nimport { PrivateRoute } from '../components/PrivateRoute';\nimport { Logo } from '../components/UnauthenticatedLogo';\nimport { useAuth } from '../features/Auth';\nimport { useNotification } from '../features/Notifications';\nimport { LayoutContent, UnauthenticatedLayout } from '../layouts/UnauthenticatedLayout';\n\nexport const options = [\n {\n intlLabel: {\n id: 'Usecase.front-end',\n defaultMessage: 'Front-end developer',\n },\n value: 'front_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.back-end',\n defaultMessage: 'Back-end developer',\n },\n value: 'back_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.full-stack',\n defaultMessage: 'Full-stack developer',\n },\n value: 'full_stack_developer',\n },\n {\n intlLabel: {\n id: 'global.content-manager',\n defaultMessage: 'Content Manager',\n },\n value: 'content_manager',\n },\n {\n intlLabel: {\n id: 'Usecase.content-creator',\n defaultMessage: 'Content Creator',\n },\n value: 'content_creator',\n },\n {\n intlLabel: {\n id: 'Usecase.other',\n defaultMessage: 'Other',\n },\n value: 'other',\n },\n];\n\nconst UseCasePage = () => {\n const { toggleNotification } = useNotification();\n const location = useLocation();\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const [role, setRole] = React.useState<string | number | null>(null);\n const [otherRole, setOtherRole] = React.useState('');\n\n const { firstname, email } = useAuth('UseCasePage', (state) => state.user) ?? {};\n const { hasAdmin } = parse(location.search, { ignoreQueryPrefix: true });\n const isOther = role === 'other';\n\n const handleSubmit = async (event: React.FormEvent, skipPersona: boolean) => {\n event.preventDefault();\n try {\n await fetch('https://analytics.strapi.io/register', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n email,\n username: firstname,\n firstAdmin: Boolean(!hasAdmin),\n persona: {\n role: skipPersona ? undefined : role,\n otherRole: skipPersona ? undefined : otherRole,\n },\n }),\n });\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'Usecase.notification.success.project-created',\n defaultMessage: 'Project has been successfully created',\n }),\n });\n navigate('/');\n } catch (err) {\n // Silent\n }\n };\n\n return (\n <UnauthenticatedLayout>\n <Main labelledBy=\"usecase-title\">\n <LayoutContent>\n <form onSubmit={(e) => handleSubmit(e, false)}>\n <Flex direction=\"column\" paddingBottom={7}>\n <Logo />\n <Box paddingTop={6} paddingBottom={1} width={`25rem`}>\n <Typography textAlign=\"center\" variant=\"alpha\" tag=\"h1\" id=\"usecase-title\">\n {formatMessage({\n id: 'Usecase.title',\n defaultMessage: 'Tell us a bit more about yourself',\n })}\n </Typography>\n </Box>\n </Flex>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Field.Root name=\"usecase\">\n <Field.Label>\n {formatMessage({\n id: 'Usecase.input.work-type',\n defaultMessage: 'What type of work do you do?',\n })}\n </Field.Label>\n <SingleSelect onChange={(value) => setRole(value)} value={role}>\n {options.map(({ intlLabel, value }) => (\n <SingleSelectOption key={value} value={value}>\n {formatMessage(intlLabel)}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </Field.Root>\n {isOther && (\n <Field.Root name=\"other\">\n <Field.Label>\n {formatMessage({ id: 'Usecase.other', defaultMessage: 'Other' })}\n </Field.Label>\n <TextInput value={otherRole} onChange={(e) => setOtherRole(e.target.value)} />\n </Field.Root>\n )}\n <Button type=\"submit\" size=\"L\" fullWidth disabled={!role}>\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n </Flex>\n </form>\n </LayoutContent>\n <Flex justifyContent=\"center\">\n <Box paddingTop={4}>\n <TextButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => handleSubmit(event, true)}\n >\n {formatMessage({\n id: 'Usecase.button.skip',\n defaultMessage: 'Skip this question',\n })}\n </TextButton>\n </Box>\n </Flex>\n </Main>\n </UnauthenticatedLayout>\n );\n};\n\nconst PrivateUseCasePage = () => {\n return (\n <PrivateRoute>\n <UseCasePage />\n </PrivateRoute>\n );\n};\n\nexport { PrivateUseCasePage, UseCasePage };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UseCasePage-6yB7tChk.mjs","sources":["../../admin/src/pages/UseCasePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Main,\n SingleSelectOption,\n SingleSelect,\n TextButton,\n TextInput,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { parse } from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useNavigate } from 'react-router-dom';\n\nimport { PrivateRoute } from '../components/PrivateRoute';\nimport { Logo } from '../components/UnauthenticatedLogo';\nimport { useAuth } from '../features/Auth';\nimport { useNotification } from '../features/Notifications';\nimport { LayoutContent, UnauthenticatedLayout } from '../layouts/UnauthenticatedLayout';\n\nexport const options = [\n {\n intlLabel: {\n id: 'Usecase.front-end',\n defaultMessage: 'Front-end developer',\n },\n value: 'front_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.back-end',\n defaultMessage: 'Back-end developer',\n },\n value: 'back_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.full-stack',\n defaultMessage: 'Full-stack developer',\n },\n value: 'full_stack_developer',\n },\n {\n intlLabel: {\n id: 'global.content-manager',\n defaultMessage: 'Content Manager',\n },\n value: 'content_manager',\n },\n {\n intlLabel: {\n id: 'Usecase.content-creator',\n defaultMessage: 'Content Creator',\n },\n value: 'content_creator',\n },\n {\n intlLabel: {\n id: 'Usecase.other',\n defaultMessage: 'Other',\n },\n value: 'other',\n },\n];\n\nconst UseCasePage = () => {\n const { toggleNotification } = useNotification();\n const location = useLocation();\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const [role, setRole] = React.useState<string | number | null>(null);\n const [otherRole, setOtherRole] = React.useState('');\n\n const { firstname, email } = useAuth('UseCasePage', (state) => state.user) ?? {};\n const { hasAdmin } = parse(location.search, { ignoreQueryPrefix: true });\n const isOther = role === 'other';\n\n const handleSubmit = async (event: React.FormEvent, skipPersona: boolean) => {\n event.preventDefault();\n try {\n await fetch('https://analytics.strapi.io/register', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n email,\n username: firstname,\n firstAdmin: Boolean(!hasAdmin),\n persona: {\n role: skipPersona ? undefined : role,\n otherRole: skipPersona ? undefined : otherRole,\n },\n }),\n });\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'Usecase.notification.success.project-created',\n defaultMessage: 'Project has been successfully created',\n }),\n });\n navigate('/');\n } catch (err) {\n // Silent\n }\n };\n\n return (\n <UnauthenticatedLayout>\n <Main labelledBy=\"usecase-title\">\n <LayoutContent>\n <form onSubmit={(e) => handleSubmit(e, false)}>\n <Flex direction=\"column\" paddingBottom={7}>\n <Logo />\n <Box paddingTop={6} paddingBottom={1} width={`25rem`}>\n <Typography textAlign=\"center\" variant=\"alpha\" tag=\"h1\" id=\"usecase-title\">\n {formatMessage({\n id: 'Usecase.title',\n defaultMessage: 'Tell us a bit more about yourself',\n })}\n </Typography>\n </Box>\n </Flex>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Field.Root name=\"usecase\">\n <Field.Label>\n {formatMessage({\n id: 'Usecase.input.work-type',\n defaultMessage: 'What type of work do you do?',\n })}\n </Field.Label>\n <SingleSelect onChange={(value) => setRole(value)} value={role}>\n {options.map(({ intlLabel, value }) => (\n <SingleSelectOption key={value} value={value}>\n {formatMessage(intlLabel)}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </Field.Root>\n {isOther && (\n <Field.Root name=\"other\">\n <Field.Label>\n {formatMessage({ id: 'Usecase.other', defaultMessage: 'Other' })}\n </Field.Label>\n <TextInput value={otherRole} onChange={(e) => setOtherRole(e.target.value)} />\n </Field.Root>\n )}\n <Button type=\"submit\" size=\"L\" fullWidth disabled={!role}>\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n </Flex>\n </form>\n </LayoutContent>\n <Flex justifyContent=\"center\">\n <Box paddingTop={4}>\n <TextButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => handleSubmit(event, true)}\n >\n {formatMessage({\n id: 'Usecase.button.skip',\n defaultMessage: 'Skip this question',\n })}\n </TextButton>\n </Box>\n </Flex>\n </Main>\n </UnauthenticatedLayout>\n );\n};\n\nconst PrivateUseCasePage = () => {\n return (\n <PrivateRoute>\n <UseCasePage />\n </PrivateRoute>\n );\n};\n\nexport { PrivateUseCasePage, UseCasePage };\n"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ const qs = require('qs');
9
9
  const reactIntl = require('react-intl');
10
10
  const reactRouterDom = require('react-router-dom');
11
11
  const PrivateRoute = require('./PrivateRoute-qahg_uiu.js');
12
- const index = require('./index-DxMAHgtc.js');
12
+ const index = require('./index-DwA5cbf6.js');
13
13
  const Theme = require('./Theme-DWGZX5tv.js');
14
14
 
15
15
  function _interopNamespace(e) {
@@ -158,4 +158,4 @@ const PrivateUseCasePage = () => {
158
158
  exports.PrivateUseCasePage = PrivateUseCasePage;
159
159
  exports.UseCasePage = UseCasePage;
160
160
  exports.options = options;
161
- //# sourceMappingURL=UseCasePage-iNVoVcCb.js.map
161
+ //# sourceMappingURL=UseCasePage-Be3TSl0e.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UseCasePage-iNVoVcCb.js","sources":["../../admin/src/pages/UseCasePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Main,\n SingleSelectOption,\n SingleSelect,\n TextButton,\n TextInput,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { parse } from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useNavigate } from 'react-router-dom';\n\nimport { PrivateRoute } from '../components/PrivateRoute';\nimport { Logo } from '../components/UnauthenticatedLogo';\nimport { useAuth } from '../features/Auth';\nimport { useNotification } from '../features/Notifications';\nimport { LayoutContent, UnauthenticatedLayout } from '../layouts/UnauthenticatedLayout';\n\nexport const options = [\n {\n intlLabel: {\n id: 'Usecase.front-end',\n defaultMessage: 'Front-end developer',\n },\n value: 'front_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.back-end',\n defaultMessage: 'Back-end developer',\n },\n value: 'back_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.full-stack',\n defaultMessage: 'Full-stack developer',\n },\n value: 'full_stack_developer',\n },\n {\n intlLabel: {\n id: 'global.content-manager',\n defaultMessage: 'Content Manager',\n },\n value: 'content_manager',\n },\n {\n intlLabel: {\n id: 'Usecase.content-creator',\n defaultMessage: 'Content Creator',\n },\n value: 'content_creator',\n },\n {\n intlLabel: {\n id: 'Usecase.other',\n defaultMessage: 'Other',\n },\n value: 'other',\n },\n];\n\nconst UseCasePage = () => {\n const { toggleNotification } = useNotification();\n const location = useLocation();\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const [role, setRole] = React.useState<string | number | null>(null);\n const [otherRole, setOtherRole] = React.useState('');\n\n const { firstname, email } = useAuth('UseCasePage', (state) => state.user) ?? {};\n const { hasAdmin } = parse(location.search, { ignoreQueryPrefix: true });\n const isOther = role === 'other';\n\n const handleSubmit = async (event: React.FormEvent, skipPersona: boolean) => {\n event.preventDefault();\n try {\n await fetch('https://analytics.strapi.io/register', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n email,\n username: firstname,\n firstAdmin: Boolean(!hasAdmin),\n persona: {\n role: skipPersona ? undefined : role,\n otherRole: skipPersona ? undefined : otherRole,\n },\n }),\n });\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'Usecase.notification.success.project-created',\n defaultMessage: 'Project has been successfully created',\n }),\n });\n navigate('/');\n } catch (err) {\n // Silent\n }\n };\n\n return (\n <UnauthenticatedLayout>\n <Main labelledBy=\"usecase-title\">\n <LayoutContent>\n <form onSubmit={(e) => handleSubmit(e, false)}>\n <Flex direction=\"column\" paddingBottom={7}>\n <Logo />\n <Box paddingTop={6} paddingBottom={1} width={`25rem`}>\n <Typography textAlign=\"center\" variant=\"alpha\" tag=\"h1\" id=\"usecase-title\">\n {formatMessage({\n id: 'Usecase.title',\n defaultMessage: 'Tell us a bit more about yourself',\n })}\n </Typography>\n </Box>\n </Flex>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Field.Root name=\"usecase\">\n <Field.Label>\n {formatMessage({\n id: 'Usecase.input.work-type',\n defaultMessage: 'What type of work do you do?',\n })}\n </Field.Label>\n <SingleSelect onChange={(value) => setRole(value)} value={role}>\n {options.map(({ intlLabel, value }) => (\n <SingleSelectOption key={value} value={value}>\n {formatMessage(intlLabel)}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </Field.Root>\n {isOther && (\n <Field.Root name=\"other\">\n <Field.Label>\n {formatMessage({ id: 'Usecase.other', defaultMessage: 'Other' })}\n </Field.Label>\n <TextInput value={otherRole} onChange={(e) => setOtherRole(e.target.value)} />\n </Field.Root>\n )}\n <Button type=\"submit\" size=\"L\" fullWidth disabled={!role}>\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n </Flex>\n </form>\n </LayoutContent>\n <Flex justifyContent=\"center\">\n <Box paddingTop={4}>\n <TextButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => handleSubmit(event, true)}\n >\n {formatMessage({\n id: 'Usecase.button.skip',\n defaultMessage: 'Skip this question',\n })}\n </TextButton>\n </Box>\n </Flex>\n </Main>\n </UnauthenticatedLayout>\n );\n};\n\nconst PrivateUseCasePage = () => {\n return (\n <PrivateRoute>\n <UseCasePage />\n </PrivateRoute>\n );\n};\n\nexport { PrivateUseCasePage, UseCasePage };\n"],"names":["useNotification","useLocation","useNavigate","useIntl","React","useAuth","parse","jsx","UnauthenticatedLayout","jsxs","Main","LayoutContent","Flex","Logo","Box","Typography","Field","SingleSelect","SingleSelectOption","TextInput","Button","TextButton","PrivateRoute"],"mappings":"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"}
1
+ {"version":3,"file":"UseCasePage-Be3TSl0e.js","sources":["../../admin/src/pages/UseCasePage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Box,\n Button,\n Flex,\n Main,\n SingleSelectOption,\n SingleSelect,\n TextButton,\n TextInput,\n Typography,\n Field,\n} from '@strapi/design-system';\nimport { parse } from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useNavigate } from 'react-router-dom';\n\nimport { PrivateRoute } from '../components/PrivateRoute';\nimport { Logo } from '../components/UnauthenticatedLogo';\nimport { useAuth } from '../features/Auth';\nimport { useNotification } from '../features/Notifications';\nimport { LayoutContent, UnauthenticatedLayout } from '../layouts/UnauthenticatedLayout';\n\nexport const options = [\n {\n intlLabel: {\n id: 'Usecase.front-end',\n defaultMessage: 'Front-end developer',\n },\n value: 'front_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.back-end',\n defaultMessage: 'Back-end developer',\n },\n value: 'back_end_developer',\n },\n {\n intlLabel: {\n id: 'Usecase.full-stack',\n defaultMessage: 'Full-stack developer',\n },\n value: 'full_stack_developer',\n },\n {\n intlLabel: {\n id: 'global.content-manager',\n defaultMessage: 'Content Manager',\n },\n value: 'content_manager',\n },\n {\n intlLabel: {\n id: 'Usecase.content-creator',\n defaultMessage: 'Content Creator',\n },\n value: 'content_creator',\n },\n {\n intlLabel: {\n id: 'Usecase.other',\n defaultMessage: 'Other',\n },\n value: 'other',\n },\n];\n\nconst UseCasePage = () => {\n const { toggleNotification } = useNotification();\n const location = useLocation();\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const [role, setRole] = React.useState<string | number | null>(null);\n const [otherRole, setOtherRole] = React.useState('');\n\n const { firstname, email } = useAuth('UseCasePage', (state) => state.user) ?? {};\n const { hasAdmin } = parse(location.search, { ignoreQueryPrefix: true });\n const isOther = role === 'other';\n\n const handleSubmit = async (event: React.FormEvent, skipPersona: boolean) => {\n event.preventDefault();\n try {\n await fetch('https://analytics.strapi.io/register', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n email,\n username: firstname,\n firstAdmin: Boolean(!hasAdmin),\n persona: {\n role: skipPersona ? undefined : role,\n otherRole: skipPersona ? undefined : otherRole,\n },\n }),\n });\n\n toggleNotification({\n type: 'success',\n message: formatMessage({\n id: 'Usecase.notification.success.project-created',\n defaultMessage: 'Project has been successfully created',\n }),\n });\n navigate('/');\n } catch (err) {\n // Silent\n }\n };\n\n return (\n <UnauthenticatedLayout>\n <Main labelledBy=\"usecase-title\">\n <LayoutContent>\n <form onSubmit={(e) => handleSubmit(e, false)}>\n <Flex direction=\"column\" paddingBottom={7}>\n <Logo />\n <Box paddingTop={6} paddingBottom={1} width={`25rem`}>\n <Typography textAlign=\"center\" variant=\"alpha\" tag=\"h1\" id=\"usecase-title\">\n {formatMessage({\n id: 'Usecase.title',\n defaultMessage: 'Tell us a bit more about yourself',\n })}\n </Typography>\n </Box>\n </Flex>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Field.Root name=\"usecase\">\n <Field.Label>\n {formatMessage({\n id: 'Usecase.input.work-type',\n defaultMessage: 'What type of work do you do?',\n })}\n </Field.Label>\n <SingleSelect onChange={(value) => setRole(value)} value={role}>\n {options.map(({ intlLabel, value }) => (\n <SingleSelectOption key={value} value={value}>\n {formatMessage(intlLabel)}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </Field.Root>\n {isOther && (\n <Field.Root name=\"other\">\n <Field.Label>\n {formatMessage({ id: 'Usecase.other', defaultMessage: 'Other' })}\n </Field.Label>\n <TextInput value={otherRole} onChange={(e) => setOtherRole(e.target.value)} />\n </Field.Root>\n )}\n <Button type=\"submit\" size=\"L\" fullWidth disabled={!role}>\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n </Flex>\n </form>\n </LayoutContent>\n <Flex justifyContent=\"center\">\n <Box paddingTop={4}>\n <TextButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => handleSubmit(event, true)}\n >\n {formatMessage({\n id: 'Usecase.button.skip',\n defaultMessage: 'Skip this question',\n })}\n </TextButton>\n </Box>\n </Flex>\n </Main>\n </UnauthenticatedLayout>\n );\n};\n\nconst PrivateUseCasePage = () => {\n return (\n <PrivateRoute>\n <UseCasePage />\n </PrivateRoute>\n );\n};\n\nexport { PrivateUseCasePage, UseCasePage };\n"],"names":["useNotification","useLocation","useNavigate","useIntl","React","useAuth","parse","jsx","UnauthenticatedLayout","jsxs","Main","LayoutContent","Flex","Logo","Box","Typography","Field","SingleSelect","SingleSelectOption","TextInput","Button","TextButton","PrivateRoute"],"mappings":"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"}
@@ -7,7 +7,7 @@ const designSystem = require('@strapi/design-system');
7
7
  const reactIntl = require('react-intl');
8
8
  const reactRouterDom = require('react-router-dom');
9
9
  const styledComponents = require('styled-components');
10
- const index = require('./index-DxMAHgtc.js');
10
+ const index = require('./index-DwA5cbf6.js');
11
11
  const Theme = require('./Theme-DWGZX5tv.js');
12
12
  const SSOProviders = require('./SSOProviders-nCeEldEQ.js');
13
13
 
@@ -52,4 +52,4 @@ const FORMS = {
52
52
  };
53
53
 
54
54
  exports.FORMS = FORMS;
55
- //# sourceMappingURL=constants-BtdWKFzN.js.map
55
+ //# sourceMappingURL=constants-BRKJB6nE.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants-BtdWKFzN.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, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { NavLink, Navigate, useNavigate } 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 { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst Providers = () => {\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n const handleClick = () => {\n navigate('/auth/login');\n };\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Navigate 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 tag=\"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 <Link tag={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":["useNavigate","useIntl","useGetProvidersQuery","jsx","Navigate","UnauthenticatedLayout","jsxs","Main","LayoutContent","Column","Logo","Box","Typography","Flex","Loader","SSOProviders","Button","Link","NavLink","styled","Divider"],"mappings":"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"}
1
+ {"version":3,"file":"constants-BRKJB6nE.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, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { NavLink, Navigate, useNavigate } 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 { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst Providers = () => {\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n const handleClick = () => {\n navigate('/auth/login');\n };\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Navigate 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 tag=\"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 <Link tag={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":["useNavigate","useIntl","useGetProvidersQuery","jsx","Navigate","UnauthenticatedLayout","jsxs","Main","LayoutContent","Column","Logo","Box","Typography","Flex","Loader","SSOProviders","Button","Link","NavLink","styled","Divider"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Divider, Main, Box, Typography, Flex, Loader, Button, Link } from '@str
3
3
  import { useIntl } from 'react-intl';
4
4
  import { useNavigate, Navigate, NavLink } from 'react-router-dom';
5
5
  import { styled } from 'styled-components';
6
- import { U as UnauthenticatedLayout, L as LayoutContent, m as Column, a as Logo } from './index-CMdgTmC0.mjs';
6
+ import { U as UnauthenticatedLayout, L as LayoutContent, m as Column, a as Logo } from './index-D4QvcqXm.mjs';
7
7
  import { l as useGetProvidersQuery } from './Theme-CTMU9Z8I.mjs';
8
8
  import { S as SSOProviders } from './SSOProviders-BD7LHrkI.mjs';
9
9
 
@@ -48,4 +48,4 @@ const FORMS = {
48
48
  };
49
49
 
50
50
  export { FORMS };
51
- //# sourceMappingURL=constants-TZNepYft.mjs.map
51
+ //# sourceMappingURL=constants-CZbP9udc.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants-TZNepYft.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, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { NavLink, Navigate, useNavigate } 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 { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst Providers = () => {\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n const handleClick = () => {\n navigate('/auth/login');\n };\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Navigate 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 tag=\"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 <Link tag={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":"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"}
1
+ {"version":3,"file":"constants-CZbP9udc.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, Link } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { NavLink, Navigate, useNavigate } 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 { useGetProvidersQuery } from '../../../../../../admin/src/services/auth';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst Providers = () => {\n const navigate = useNavigate();\n const { formatMessage } = useIntl();\n const { isLoading, data: providers = [] } = useGetProvidersQuery(undefined, {\n skip: !window.strapi.features.isEnabled(window.strapi.features.SSO),\n });\n\n const handleClick = () => {\n navigate('/auth/login');\n };\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Navigate 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 tag=\"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 <Link tag={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":"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"}