strapi-identity 0.1.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/admin/{AdminReset-H453s-DE.mjs → AdminReset-CCGgw-0k.mjs} +2 -2
- package/dist/admin/{AdminReset-C0QibZXW.js → AdminReset-QClQP2Il.js} +2 -2
- package/dist/admin/{ProfileToggle-BFmIWCrN.js → ProfileToggle-H31GHNDA.js} +299 -39
- package/dist/admin/{ProfileToggle-DQeXCx34.mjs → ProfileToggle-gPuH6dGP.mjs} +299 -39
- package/dist/admin/{SettingsPage-OwMik_IK.mjs → SettingsPage-DgPikS3m.mjs} +344 -102
- package/dist/admin/{SettingsPage-DyF7YbsX.js → SettingsPage-DulEjadb.js} +343 -101
- package/dist/admin/{ar-i2eiMZkz.js → ar-BYnI7Tsa.js} +36 -23
- package/dist/admin/{ar-BXaam37U.mjs → ar-DwZqj0qM.mjs} +36 -23
- package/dist/admin/{ca-DZ9DbEcQ.mjs → ca-aKVVc8iQ.mjs} +36 -23
- package/dist/admin/{ca-BVpGzY8r.js → ca-sBRHuaFU.js} +36 -23
- package/dist/admin/{cs-Gok16KLy.mjs → cs--prflMHS.mjs} +36 -23
- package/dist/admin/{cs-_PZVkwt0.js → cs-gU7KP3Lx.js} +36 -23
- package/dist/admin/de-BT25lv_6.mjs +49 -0
- package/dist/admin/de-CrlCAUuf.js +49 -0
- package/dist/admin/{dk-B7EOsAdU.js → dk-BNC3WUzY.js} +36 -23
- package/dist/admin/{dk-CI64Xmli.mjs → dk-Ck3AQYU7.mjs} +36 -23
- package/dist/admin/{en-B_vJwdfS.mjs → en-9qzlpde0.mjs} +36 -23
- package/dist/admin/{en-D4KP9t1Y.js → en-DBj0AD5g.js} +36 -23
- package/dist/admin/{es-CHwF7YK-.js → es-D5Sn41_H.js} +36 -23
- package/dist/admin/{es-CqJcXo4j.mjs → es-lh6XoPb7.mjs} +36 -23
- package/dist/admin/{eu-D-snytN8.mjs → eu-Cuz6ijBX.mjs} +36 -23
- package/dist/admin/{eu-DvdbwE5E.js → eu-Qr3RvDPW.js} +36 -23
- package/dist/admin/fr-C4pmkPYn.js +49 -0
- package/dist/admin/fr-ChlDcZsG.mjs +49 -0
- package/dist/admin/{gu-3wJbbAmw.mjs → gu-B6zyD1bW.mjs} +36 -23
- package/dist/admin/{gu-D2LgVfMp.js → gu-BMZL76zM.js} +36 -23
- package/dist/admin/{he-Bjv7eygt.mjs → he-C5V-qZCX.mjs} +36 -23
- package/dist/admin/{he-DnhYpbvN.js → he-H6iBa45A.js} +36 -23
- package/dist/admin/{hi-DDD2E3A3.js → hi-Be8rPk7I.js} +36 -23
- package/dist/admin/{hi-CNiDezU7.mjs → hi-czhOWo6-.mjs} +36 -23
- package/dist/admin/{hu-C1_YkZHU.js → hu-DKp6kOmc.js} +36 -23
- package/dist/admin/{hu-aLaIWmGw.mjs → hu-NbZ3aiYV.mjs} +36 -23
- package/dist/admin/{id-u3wVE6Rv.js → id-DO0bwFgY.js} +36 -23
- package/dist/admin/{id-C8WRgGm1.mjs → id-NH9PvcR5.mjs} +36 -23
- package/dist/admin/{index-BXZI8nMZ.js → index-C9K2h5UC.js} +65 -12
- package/dist/admin/{index-D45I6rWF.mjs → index-C_4USMnn.mjs} +65 -12
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/admin/{it-CjoRoJj1.mjs → it-Cmrey6tg.mjs} +36 -23
- package/dist/admin/{it-CDw6dG9Z.js → it-Df6-7-M7.js} +36 -23
- package/dist/admin/{ja-CewucIUY.mjs → ja-DH3KMqOL.mjs} +36 -23
- package/dist/admin/{ja-CbMXy2ym.js → ja-HuAq9ZwT.js} +36 -23
- package/dist/admin/{ko-D-kAxDtd.mjs → ko-DPN28RE8.mjs} +36 -23
- package/dist/admin/{ko-BEtJPpfJ.js → ko-S9k8KA8K.js} +36 -23
- package/dist/admin/{ml-0fR2_MmA.js → ml-Bh9GGqcW.js} +36 -23
- package/dist/admin/{ml-DR3AaofF.mjs → ml-MsHNacm6.mjs} +36 -23
- package/dist/admin/{ms-COHLS5e5.mjs → ms-TjHAaxTd.mjs} +36 -23
- package/dist/admin/{ms-DLvuGSlk.js → ms-hO5YeEg4.js} +36 -23
- package/dist/admin/{nl-wj6kn642.js → nl-BF98NBwL.js} +36 -23
- package/dist/admin/{nl-DVtHsM2H.mjs → nl-BLILZU8-.mjs} +36 -23
- package/dist/admin/{no-D_0yjyCy.mjs → no-BtVZ-siy.mjs} +36 -23
- package/dist/admin/{no-DVBgWt8q.js → no-bl1OXlfa.js} +36 -23
- package/dist/admin/{pl-C3GNxjVX.mjs → pl-DCSB6LwZ.mjs} +36 -23
- package/dist/admin/{pl-B2ghisbC.js → pl-DCnOWIDw.js} +36 -23
- package/dist/admin/{pt-BR-BbKV8YoX.mjs → pt-BR-CeLqmj88.mjs} +36 -23
- package/dist/admin/{pt-BR-CfgNaB1-.js → pt-BR-D2_UrxTp.js} +36 -23
- package/dist/admin/{pt-DKe8rRWa.js → pt-DIu8RT_X.js} +36 -23
- package/dist/admin/{pt-z4K3cCjf.mjs → pt-fgjdOyW5.mjs} +36 -23
- package/dist/admin/{ru-C85izLFa.mjs → ru-B_hlpAyP.mjs} +36 -23
- package/dist/admin/{ru-BFSm68HC.js → ru-BccMCf0l.js} +36 -23
- package/dist/admin/{sa-B1XoTTrE.mjs → sa-BtuJ_I1t.mjs} +36 -23
- package/dist/admin/{sa-BOPaqylt.js → sa-D3A-fo85.js} +36 -23
- package/dist/admin/{sk-C48lUPuC.mjs → sk-mmuTFlCK.mjs} +36 -23
- package/dist/admin/{sk-Dd-S1612.js → sk-uSLC6KhO.js} +36 -23
- package/dist/admin/{sv-BLma_kJl.mjs → sv-BlaHc5ax.mjs} +36 -23
- package/dist/admin/{sv-lg64Cw78.js → sv-CuKk5tE-.js} +36 -23
- package/dist/admin/{th-DPbm5NrX.js → th-Bv3NKkYO.js} +36 -23
- package/dist/admin/{th-BJEu5n7q.mjs → th-BwyhFaeE.mjs} +36 -23
- package/dist/admin/{tokenHelpers-jtoRu0q5.js → tokenHelpers-B54WRTn1.js} +4 -10
- package/dist/admin/{tokenHelpers-DagDzpso.mjs → tokenHelpers-CKVyT1sz.mjs} +4 -10
- package/dist/admin/{tr-DkIUODKq.mjs → tr-BLocNlbZ.mjs} +36 -23
- package/dist/admin/{tr-Bm1QZr4v.js → tr-Bmvs-Hx-.js} +36 -23
- package/dist/admin/{uk-FARzIGx4.js → uk-BDxn-EZU.js} +36 -23
- package/dist/admin/{uk-D7ArtSe3.mjs → uk-CyZ10xtq.mjs} +36 -23
- package/dist/admin/{vi-DS0yslPP.mjs → vi-Bx_UJ8up.mjs} +36 -23
- package/dist/admin/{vi-Bi9B6eTY.js → vi-F_mqQCme.js} +36 -23
- package/dist/admin/{zh-DkEx28ZA.js → zh-CFZJPG5N.js} +36 -23
- package/dist/admin/{zh-DwCvIPSz.mjs → zh-CjJdRa3l.mjs} +36 -23
- package/dist/admin/{zh-Hans-BwwKCR6_.js → zh-Hans-4BhSwSQw.js} +36 -23
- package/dist/admin/{zh-Hans-DP2xZyda.mjs → zh-Hans-s7G2GUHU.mjs} +36 -23
- package/dist/server/index.js +487 -50
- package/dist/server/index.mjs +487 -50
- package/package.json +5 -4
- package/dist/admin/de-BuYn1AYX.mjs +0 -26
- package/dist/admin/de-GItli7en.js +0 -26
- package/dist/admin/fr-Bt6sS5GX.mjs +0 -26
- package/dist/admin/fr-CbCW6hVD.js +0 -26
|
@@ -2,10 +2,10 @@ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
|
2
2
|
import { useRef, useState, useEffect } from "react";
|
|
3
3
|
import { W as WarningAlert } from "./WarningAlert-VU011LVF.mjs";
|
|
4
4
|
import { useNotification, Page, Layouts } from "@strapi/strapi/admin";
|
|
5
|
-
import { Button, Flex, Typography, Grid, Field, Toggle, TextInput } from "@strapi/design-system";
|
|
5
|
+
import { Button, Flex, Typography, Grid, Field, Toggle, TextInput, Textarea } from "@strapi/design-system";
|
|
6
6
|
import { Check } from "@strapi/icons";
|
|
7
|
-
import { g as getTranslation } from "./index-
|
|
8
|
-
import { g as getToken } from "./tokenHelpers-
|
|
7
|
+
import { g as getTranslation } from "./index-C_4USMnn.mjs";
|
|
8
|
+
import { g as getToken } from "./tokenHelpers-CKVyT1sz.mjs";
|
|
9
9
|
import { useIntl } from "react-intl";
|
|
10
10
|
var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
|
|
11
11
|
var lodash$1 = { exports: {} };
|
|
@@ -25,7 +25,7 @@ function requireLodash() {
|
|
|
25
25
|
(function(module, exports$1) {
|
|
26
26
|
(function() {
|
|
27
27
|
var undefined$1;
|
|
28
|
-
var VERSION = "4.17.
|
|
28
|
+
var VERSION = "4.17.23";
|
|
29
29
|
var LARGE_ARRAY_SIZE = 200;
|
|
30
30
|
var CORE_ERROR_TEXT = "Unsupported core-js use. Try https://npms.io/search?q=ponyfill.", FUNC_ERROR_TEXT = "Expected a function", INVALID_TEMPL_VAR_ERROR_TEXT = "Invalid `variable` option passed into `_.template`";
|
|
31
31
|
var HASH_UNDEFINED = "__lodash_hash_undefined__";
|
|
@@ -1953,8 +1953,28 @@ function requireLodash() {
|
|
|
1953
1953
|
}
|
|
1954
1954
|
function baseUnset(object, path) {
|
|
1955
1955
|
path = castPath(path, object);
|
|
1956
|
-
|
|
1957
|
-
|
|
1956
|
+
var index = -1, length = path.length;
|
|
1957
|
+
if (!length) {
|
|
1958
|
+
return true;
|
|
1959
|
+
}
|
|
1960
|
+
var isRootPrimitive = object == null || typeof object !== "object" && typeof object !== "function";
|
|
1961
|
+
while (++index < length) {
|
|
1962
|
+
var key = path[index];
|
|
1963
|
+
if (typeof key !== "string") {
|
|
1964
|
+
continue;
|
|
1965
|
+
}
|
|
1966
|
+
if (key === "__proto__" && !hasOwnProperty.call(object, "__proto__")) {
|
|
1967
|
+
return false;
|
|
1968
|
+
}
|
|
1969
|
+
if (key === "constructor" && index + 1 < length && typeof path[index + 1] === "string" && path[index + 1] === "prototype") {
|
|
1970
|
+
if (isRootPrimitive && index === 0) {
|
|
1971
|
+
continue;
|
|
1972
|
+
}
|
|
1973
|
+
return false;
|
|
1974
|
+
}
|
|
1975
|
+
}
|
|
1976
|
+
var obj = parent(object, path);
|
|
1977
|
+
return obj == null || delete obj[toKey(last(path))];
|
|
1958
1978
|
}
|
|
1959
1979
|
function baseUpdate(object, path, updater, customizer) {
|
|
1960
1980
|
return baseSet(object, path, updater(baseGet(object, path)), customizer);
|
|
@@ -5496,12 +5516,76 @@ function requireLodash() {
|
|
|
5496
5516
|
return lodash$1.exports;
|
|
5497
5517
|
}
|
|
5498
5518
|
var lodashExports = requireLodash();
|
|
5499
|
-
const defaultConfig = {
|
|
5519
|
+
const defaultConfig = {
|
|
5520
|
+
enabled: false,
|
|
5521
|
+
enforce: false,
|
|
5522
|
+
issuer: "Strapi",
|
|
5523
|
+
email_enabled: false,
|
|
5524
|
+
from_email: "",
|
|
5525
|
+
from_name: "",
|
|
5526
|
+
response_email: "",
|
|
5527
|
+
subject: "Your One-Time Password",
|
|
5528
|
+
text: "Your one-time password is: <%= OTP %>",
|
|
5529
|
+
message: `<div style="margin: 0; padding: 0;">
|
|
5530
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#f9f9f9">
|
|
5531
|
+
<tr>
|
|
5532
|
+
<td align="center" style="padding: 40px 10px;">
|
|
5533
|
+
<table border="0" cellpadding="0" cellspacing="0" width="600" bgcolor="#ffffff" style="border: 1px solid #dddddd;">
|
|
5534
|
+
<tr>
|
|
5535
|
+
<td align="center" style="padding: 40px 40px 20px 40px;">
|
|
5536
|
+
<font face="Arial, sans-serif" size="5" color="#333333">
|
|
5537
|
+
<strong>Verify Your Account</strong>
|
|
5538
|
+
</font>
|
|
5539
|
+
</td>
|
|
5540
|
+
</tr>
|
|
5541
|
+
<tr>
|
|
5542
|
+
<td align="center" style="padding: 0 40px 20px 40px;">
|
|
5543
|
+
<font face="Arial, sans-serif" size="3" color="#555555" style="line-height: 24px;">
|
|
5544
|
+
Please use the following one-time password to complete your registration. This code will expire in 10 minutes.
|
|
5545
|
+
</font>
|
|
5546
|
+
</td>
|
|
5547
|
+
</tr>
|
|
5548
|
+
<tr>
|
|
5549
|
+
<td align="center" style="padding: 20px 40px;">
|
|
5550
|
+
<table border="0" cellpadding="0" cellspacing="0">
|
|
5551
|
+
<tr>
|
|
5552
|
+
<td align="center" bgcolor="#f4f4f4" style="padding: 20px 30px; font-family: Courier, monospace; font-size: 36px; color: #2d3436;">
|
|
5553
|
+
<strong><%= OTP %></strong>
|
|
5554
|
+
</td>
|
|
5555
|
+
</tr>
|
|
5556
|
+
</table>
|
|
5557
|
+
</td>
|
|
5558
|
+
</tr>
|
|
5559
|
+
<tr>
|
|
5560
|
+
<td align="center" style="padding: 20px 40px 40px 40px;">
|
|
5561
|
+
<font face="Arial, sans-serif" size="2" color="#888888">
|
|
5562
|
+
If you did not request this code, please ignore this email.
|
|
5563
|
+
</font>
|
|
5564
|
+
</td>
|
|
5565
|
+
</tr>
|
|
5566
|
+
</table>
|
|
5567
|
+
<table border="0" cellpadding="0" cellspacing="0" width="600">
|
|
5568
|
+
<tr>
|
|
5569
|
+
<td align="center" style="padding: 20px;">
|
|
5570
|
+
<font face="Arial, sans-serif" size="1" color="#aaaaaa">
|
|
5571
|
+
© <%= YEAR %> Your Company Name
|
|
5572
|
+
</font>
|
|
5573
|
+
</td>
|
|
5574
|
+
</tr>
|
|
5575
|
+
</table>
|
|
5576
|
+
</td>
|
|
5577
|
+
</tr>
|
|
5578
|
+
</table>
|
|
5579
|
+
</div>`
|
|
5580
|
+
};
|
|
5500
5581
|
const getConfigFromForm = (formData) => {
|
|
5501
5582
|
return Array.from(formData.entries()).reduce(
|
|
5502
5583
|
(acc, [key, value]) => {
|
|
5503
|
-
if (key === "enabled" || key === "enforce"
|
|
5504
|
-
|
|
5584
|
+
if (key === "enabled" || key === "enforce" || key === "email_enabled") {
|
|
5585
|
+
acc[key] = value === "on";
|
|
5586
|
+
} else {
|
|
5587
|
+
acc[key] = String(value);
|
|
5588
|
+
}
|
|
5505
5589
|
return acc;
|
|
5506
5590
|
},
|
|
5507
5591
|
Object.assign({}, defaultConfig)
|
|
@@ -5512,22 +5596,30 @@ function SettingsPage() {
|
|
|
5512
5596
|
const { formatMessage } = useIntl();
|
|
5513
5597
|
const { toggleNotification } = useNotification();
|
|
5514
5598
|
const [showWarning, setShowWarning] = useState(false);
|
|
5599
|
+
const [showEmailWarning, setShowEmailWarning] = useState(false);
|
|
5515
5600
|
const [canSave, setCanSave] = useState(false);
|
|
5516
5601
|
const [isSaving, setSaving] = useState(false);
|
|
5517
5602
|
const [isLoading, setLoading] = useState(true);
|
|
5518
5603
|
const [initialConfig, setInitialConfig] = useState(null);
|
|
5519
5604
|
const [enabled, setEnabled] = useState(false);
|
|
5605
|
+
const [emailEnabled, setEmailEnabled] = useState(false);
|
|
5520
5606
|
const [enforce, setEnforce] = useState(false);
|
|
5521
5607
|
const handleSubmit = async (event, confirmed) => {
|
|
5522
5608
|
event?.preventDefault?.();
|
|
5523
5609
|
setSaving(true);
|
|
5524
5610
|
const formData = new FormData(event.currentTarget);
|
|
5525
5611
|
const values = getConfigFromForm(formData);
|
|
5612
|
+
console.log(formData, values);
|
|
5526
5613
|
if (initialConfig?.enabled && !values.enabled && !confirmed) {
|
|
5527
5614
|
setShowWarning(true);
|
|
5528
5615
|
setSaving(false);
|
|
5529
5616
|
return;
|
|
5530
5617
|
}
|
|
5618
|
+
if (initialConfig?.email_enabled && !values.email_enabled && !confirmed) {
|
|
5619
|
+
setShowEmailWarning(true);
|
|
5620
|
+
setSaving(false);
|
|
5621
|
+
return;
|
|
5622
|
+
}
|
|
5531
5623
|
try {
|
|
5532
5624
|
const token = getToken();
|
|
5533
5625
|
const response = await fetch("/strapi-identity/config", {
|
|
@@ -5569,7 +5661,7 @@ function SettingsPage() {
|
|
|
5569
5661
|
(async () => {
|
|
5570
5662
|
try {
|
|
5571
5663
|
const response = await fetch("/strapi-identity/config", {
|
|
5572
|
-
headers: {
|
|
5664
|
+
headers: { "Content-Type": "application/json", authorization: `Bearer ${token}` },
|
|
5573
5665
|
signal: ac.signal
|
|
5574
5666
|
});
|
|
5575
5667
|
const json = await response.json();
|
|
@@ -5578,6 +5670,7 @@ function SettingsPage() {
|
|
|
5578
5670
|
if (error) throw new Error(error);
|
|
5579
5671
|
setInitialConfig(data);
|
|
5580
5672
|
setEnabled(data.enabled);
|
|
5673
|
+
setEmailEnabled(data.email_enabled);
|
|
5581
5674
|
setEnforce(data.enforce);
|
|
5582
5675
|
} catch (error) {
|
|
5583
5676
|
console.error("Error fetching config:", error);
|
|
@@ -5614,74 +5707,155 @@ function SettingsPage() {
|
|
|
5614
5707
|
primaryAction: /* @__PURE__ */ jsx(Button, { disabled: !canSave, loading: isSaving, type: "submit", startIcon: /* @__PURE__ */ jsx(Check, {}), children: formatMessage({ id: "global.save", defaultMessage: "Save" }) })
|
|
5615
5708
|
}
|
|
5616
5709
|
),
|
|
5617
|
-
/* @__PURE__ */ jsx(Layouts.Content, { children: /* @__PURE__ */
|
|
5618
|
-
|
|
5619
|
-
|
|
5620
|
-
|
|
5621
|
-
|
|
5622
|
-
|
|
5623
|
-
|
|
5624
|
-
|
|
5625
|
-
|
|
5626
|
-
|
|
5627
|
-
|
|
5628
|
-
|
|
5629
|
-
|
|
5630
|
-
|
|
5631
|
-
|
|
5632
|
-
|
|
5633
|
-
|
|
5634
|
-
|
|
5635
|
-
|
|
5636
|
-
/* @__PURE__ */
|
|
5710
|
+
/* @__PURE__ */ jsx(Flex, { direction: "column", gap: 6, children: /* @__PURE__ */ jsx(Layouts.Content, { children: /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "stretch", gap: 6, children: [
|
|
5711
|
+
/* @__PURE__ */ jsxs(
|
|
5712
|
+
Flex,
|
|
5713
|
+
{
|
|
5714
|
+
direction: "column",
|
|
5715
|
+
alignItems: "stretch",
|
|
5716
|
+
gap: 4,
|
|
5717
|
+
hasRadius: true,
|
|
5718
|
+
background: "neutral0",
|
|
5719
|
+
shadow: "tableShadow",
|
|
5720
|
+
paddingTop: 6,
|
|
5721
|
+
paddingBottom: 6,
|
|
5722
|
+
paddingRight: 7,
|
|
5723
|
+
paddingLeft: 7,
|
|
5724
|
+
children: [
|
|
5725
|
+
/* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 1, children: /* @__PURE__ */ jsx(Typography, { variant: "delta", tag: "h2", children: formatMessage({
|
|
5726
|
+
id: getTranslation("profile.title"),
|
|
5727
|
+
defaultMessage: "Two-Factor Authentication"
|
|
5728
|
+
}) }) }),
|
|
5729
|
+
/* @__PURE__ */ jsxs(Grid.Root, { gap: 5, tag: "dl", children: [
|
|
5730
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(
|
|
5731
|
+
Field.Root,
|
|
5732
|
+
{
|
|
5733
|
+
hint: formatMessage({
|
|
5734
|
+
id: getTranslation("settings.enabled_hint"),
|
|
5735
|
+
defaultMessage: "Enable or disable Two-Factor Authentication for all users."
|
|
5736
|
+
}),
|
|
5737
|
+
children: [
|
|
5738
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({ id: "global.enabled", defaultMessage: "Enabled" }) }),
|
|
5739
|
+
/* @__PURE__ */ jsx(
|
|
5740
|
+
Toggle,
|
|
5741
|
+
{
|
|
5742
|
+
name: "enabled",
|
|
5743
|
+
checked: enabled,
|
|
5744
|
+
onChange: ({ target }) => setEnabled(target.checked),
|
|
5745
|
+
offLabel: formatMessage({
|
|
5746
|
+
id: "app.components.ToggleCheckbox.off-label",
|
|
5747
|
+
defaultMessage: "False"
|
|
5748
|
+
}),
|
|
5749
|
+
onLabel: formatMessage({
|
|
5750
|
+
id: "app.components.ToggleCheckbox.on-label",
|
|
5751
|
+
defaultMessage: "True"
|
|
5752
|
+
})
|
|
5753
|
+
}
|
|
5754
|
+
),
|
|
5755
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5756
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5757
|
+
]
|
|
5758
|
+
}
|
|
5759
|
+
) }),
|
|
5760
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(
|
|
5761
|
+
Field.Root,
|
|
5762
|
+
{
|
|
5763
|
+
hint: formatMessage({
|
|
5764
|
+
id: getTranslation("settings.enforce_hint"),
|
|
5765
|
+
defaultMessage: "Enforce Multi-Factor Authentication for all users. If enabled, users will be required to set up MFA on their next login."
|
|
5766
|
+
}),
|
|
5767
|
+
children: [
|
|
5768
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5769
|
+
id: getTranslation("settings.enforce"),
|
|
5770
|
+
defaultMessage: "Enforce MFA"
|
|
5771
|
+
}) }),
|
|
5772
|
+
/* @__PURE__ */ jsx(
|
|
5773
|
+
Toggle,
|
|
5774
|
+
{
|
|
5775
|
+
name: "enforce",
|
|
5776
|
+
disabled: true,
|
|
5777
|
+
checked: enforce,
|
|
5778
|
+
onChange: ({ target }) => setEnforce(target.checked),
|
|
5779
|
+
offLabel: formatMessage({
|
|
5780
|
+
id: "app.components.ToggleCheckbox.off-label",
|
|
5781
|
+
defaultMessage: "False"
|
|
5782
|
+
}),
|
|
5783
|
+
onLabel: formatMessage({
|
|
5784
|
+
id: "app.components.ToggleCheckbox.on-label",
|
|
5785
|
+
defaultMessage: "True"
|
|
5786
|
+
})
|
|
5787
|
+
}
|
|
5788
|
+
),
|
|
5789
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5790
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5791
|
+
]
|
|
5792
|
+
}
|
|
5793
|
+
) }),
|
|
5794
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(
|
|
5795
|
+
Field.Root,
|
|
5796
|
+
{
|
|
5797
|
+
hint: formatMessage({
|
|
5798
|
+
id: getTranslation("settings.issuer_hint"),
|
|
5799
|
+
defaultMessage: "Displayed in the MFA app"
|
|
5800
|
+
}),
|
|
5801
|
+
children: [
|
|
5802
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5803
|
+
id: getTranslation("settings.issuer"),
|
|
5804
|
+
defaultMessage: "Issuer Name"
|
|
5805
|
+
}) }),
|
|
5806
|
+
/* @__PURE__ */ jsx(
|
|
5807
|
+
TextInput,
|
|
5808
|
+
{
|
|
5809
|
+
name: "issuer",
|
|
5810
|
+
defaultValue: initialConfig?.issuer,
|
|
5811
|
+
placeholder: formatMessage({
|
|
5812
|
+
id: getTranslation("settings.issuer"),
|
|
5813
|
+
defaultMessage: "Issuer Name"
|
|
5814
|
+
})
|
|
5815
|
+
}
|
|
5816
|
+
),
|
|
5817
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5818
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5819
|
+
]
|
|
5820
|
+
}
|
|
5821
|
+
) })
|
|
5822
|
+
] })
|
|
5823
|
+
]
|
|
5824
|
+
}
|
|
5825
|
+
),
|
|
5826
|
+
/* @__PURE__ */ jsxs(
|
|
5827
|
+
Flex,
|
|
5828
|
+
{
|
|
5829
|
+
direction: "column",
|
|
5830
|
+
alignItems: "stretch",
|
|
5831
|
+
gap: 4,
|
|
5832
|
+
hasRadius: true,
|
|
5833
|
+
background: "neutral0",
|
|
5834
|
+
shadow: "tableShadow",
|
|
5835
|
+
paddingTop: 6,
|
|
5836
|
+
paddingBottom: 6,
|
|
5837
|
+
paddingRight: 7,
|
|
5838
|
+
paddingLeft: 7,
|
|
5839
|
+
children: [
|
|
5840
|
+
/* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 1, children: /* @__PURE__ */ jsx(Typography, { variant: "delta", tag: "h2", children: formatMessage({
|
|
5841
|
+
id: getTranslation("settings.email_title"),
|
|
5842
|
+
defaultMessage: "Email Settings"
|
|
5843
|
+
}) }) }),
|
|
5844
|
+
/* @__PURE__ */ jsx(Grid.Root, { gap: 5, tag: "dl", children: /* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(
|
|
5637
5845
|
Field.Root,
|
|
5638
5846
|
{
|
|
5639
5847
|
hint: formatMessage({
|
|
5640
|
-
id: getTranslation("settings.
|
|
5641
|
-
defaultMessage: "Enable or disable
|
|
5848
|
+
id: getTranslation("settings.email_enabled_hint"),
|
|
5849
|
+
defaultMessage: "Enable or disable Email MFA."
|
|
5642
5850
|
}),
|
|
5643
5851
|
children: [
|
|
5644
5852
|
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({ id: "global.enabled", defaultMessage: "Enabled" }) }),
|
|
5645
5853
|
/* @__PURE__ */ jsx(
|
|
5646
5854
|
Toggle,
|
|
5647
5855
|
{
|
|
5648
|
-
name: "
|
|
5649
|
-
checked:
|
|
5650
|
-
onChange: ({ target }) =>
|
|
5651
|
-
offLabel: formatMessage({
|
|
5652
|
-
id: "app.components.ToggleCheckbox.off-label",
|
|
5653
|
-
defaultMessage: "False"
|
|
5654
|
-
}),
|
|
5655
|
-
onLabel: formatMessage({
|
|
5656
|
-
id: "app.components.ToggleCheckbox.on-label",
|
|
5657
|
-
defaultMessage: "True"
|
|
5658
|
-
})
|
|
5659
|
-
}
|
|
5660
|
-
),
|
|
5661
|
-
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5662
|
-
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5663
|
-
]
|
|
5664
|
-
}
|
|
5665
|
-
) }),
|
|
5666
|
-
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(
|
|
5667
|
-
Field.Root,
|
|
5668
|
-
{
|
|
5669
|
-
hint: formatMessage({
|
|
5670
|
-
id: getTranslation("settings.enforce_hint"),
|
|
5671
|
-
defaultMessage: "Enforce Multi-Factor Authentication for all users. If enabled, users will be required to set up MFA on their next login."
|
|
5672
|
-
}),
|
|
5673
|
-
children: [
|
|
5674
|
-
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5675
|
-
id: getTranslation("settings.enforce"),
|
|
5676
|
-
defaultMessage: "Enforce MFA"
|
|
5677
|
-
}) }),
|
|
5678
|
-
/* @__PURE__ */ jsx(
|
|
5679
|
-
Toggle,
|
|
5680
|
-
{
|
|
5681
|
-
name: "enforce",
|
|
5682
|
-
disabled: true,
|
|
5683
|
-
checked: enforce,
|
|
5684
|
-
onChange: ({ target }) => setEnforce(target.checked),
|
|
5856
|
+
name: "email_enabled",
|
|
5857
|
+
checked: emailEnabled,
|
|
5858
|
+
onChange: ({ target }) => setEmailEnabled(target.checked),
|
|
5685
5859
|
offLabel: formatMessage({
|
|
5686
5860
|
id: "app.components.ToggleCheckbox.off-label",
|
|
5687
5861
|
defaultMessage: "False"
|
|
@@ -5696,40 +5870,108 @@ function SettingsPage() {
|
|
|
5696
5870
|
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5697
5871
|
]
|
|
5698
5872
|
}
|
|
5699
|
-
) }),
|
|
5700
|
-
/* @__PURE__ */
|
|
5701
|
-
Field.Root,
|
|
5702
|
-
|
|
5703
|
-
|
|
5704
|
-
|
|
5705
|
-
|
|
5706
|
-
}),
|
|
5707
|
-
|
|
5708
|
-
|
|
5709
|
-
|
|
5710
|
-
|
|
5711
|
-
|
|
5712
|
-
|
|
5713
|
-
|
|
5714
|
-
|
|
5715
|
-
|
|
5716
|
-
|
|
5717
|
-
|
|
5718
|
-
|
|
5719
|
-
|
|
5720
|
-
|
|
5721
|
-
|
|
5722
|
-
|
|
5723
|
-
|
|
5724
|
-
|
|
5725
|
-
|
|
5726
|
-
|
|
5727
|
-
|
|
5728
|
-
|
|
5729
|
-
|
|
5730
|
-
|
|
5731
|
-
|
|
5873
|
+
) }) }),
|
|
5874
|
+
/* @__PURE__ */ jsxs(Grid.Root, { gap: 5, tag: "dl", children: [
|
|
5875
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(Field.Root, { children: [
|
|
5876
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5877
|
+
id: "PopUpForm.Email.options.from.name.label",
|
|
5878
|
+
defaultMessage: "Shipper name"
|
|
5879
|
+
}) }),
|
|
5880
|
+
/* @__PURE__ */ jsx(TextInput, { name: "from_name", defaultValue: initialConfig?.from_name || "" }),
|
|
5881
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5882
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5883
|
+
] }) }),
|
|
5884
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(Field.Root, { children: [
|
|
5885
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5886
|
+
id: "PopUpForm.Email.options.from.email.label",
|
|
5887
|
+
defaultMessage: "Shipper email"
|
|
5888
|
+
}) }),
|
|
5889
|
+
/* @__PURE__ */ jsx(
|
|
5890
|
+
TextInput,
|
|
5891
|
+
{
|
|
5892
|
+
name: "from_email",
|
|
5893
|
+
defaultValue: initialConfig?.from_email || ""
|
|
5894
|
+
}
|
|
5895
|
+
),
|
|
5896
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5897
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5898
|
+
] }) }),
|
|
5899
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(Field.Root, { children: [
|
|
5900
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5901
|
+
id: "PopUpForm.Email.options.response_email.label",
|
|
5902
|
+
defaultMessage: "Response email"
|
|
5903
|
+
}) }),
|
|
5904
|
+
/* @__PURE__ */ jsx(
|
|
5905
|
+
TextInput,
|
|
5906
|
+
{
|
|
5907
|
+
name: "response_email",
|
|
5908
|
+
defaultValue: initialConfig?.response_email || ""
|
|
5909
|
+
}
|
|
5910
|
+
),
|
|
5911
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5912
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5913
|
+
] }) }),
|
|
5914
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 6, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(Field.Root, { children: [
|
|
5915
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5916
|
+
id: "PopUpForm.Email.options.object.label",
|
|
5917
|
+
defaultMessage: "Subject"
|
|
5918
|
+
}) }),
|
|
5919
|
+
/* @__PURE__ */ jsx(TextInput, { name: "subject", defaultValue: initialConfig?.subject || "" }),
|
|
5920
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5921
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5922
|
+
] }) }),
|
|
5923
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 12, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(Field.Root, { children: [
|
|
5924
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5925
|
+
id: "settings.accessibility_message",
|
|
5926
|
+
defaultMessage: "Accessibility Message"
|
|
5927
|
+
}) }),
|
|
5928
|
+
/* @__PURE__ */ jsx(TextInput, { name: "text", defaultValue: initialConfig?.text || "" }),
|
|
5929
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5930
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5931
|
+
] }) }),
|
|
5932
|
+
/* @__PURE__ */ jsx(Grid.Item, { col: 12, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsxs(Field.Root, { children: [
|
|
5933
|
+
/* @__PURE__ */ jsx(Field.Label, { children: formatMessage({
|
|
5934
|
+
id: getTranslation("PopUpForm.Email.options.message.label"),
|
|
5935
|
+
defaultMessage: "Message"
|
|
5936
|
+
}) }),
|
|
5937
|
+
/* @__PURE__ */ jsx(
|
|
5938
|
+
Textarea,
|
|
5939
|
+
{
|
|
5940
|
+
name: "message",
|
|
5941
|
+
defaultValue: initialConfig?.message || "",
|
|
5942
|
+
rows: 15
|
|
5943
|
+
}
|
|
5944
|
+
),
|
|
5945
|
+
/* @__PURE__ */ jsx(Field.Hint, {}),
|
|
5946
|
+
/* @__PURE__ */ jsx(Field.Error, {})
|
|
5947
|
+
] }) })
|
|
5948
|
+
] })
|
|
5949
|
+
]
|
|
5950
|
+
}
|
|
5951
|
+
)
|
|
5952
|
+
] }) }) })
|
|
5732
5953
|
] }) }),
|
|
5954
|
+
/* @__PURE__ */ jsxs(
|
|
5955
|
+
WarningAlert,
|
|
5956
|
+
{
|
|
5957
|
+
open: showEmailWarning,
|
|
5958
|
+
onCancel: () => setShowEmailWarning(false),
|
|
5959
|
+
onConfirm: () => {
|
|
5960
|
+
setShowEmailWarning(false);
|
|
5961
|
+
formRef.current && handleSubmit({ currentTarget: formRef.current }, true);
|
|
5962
|
+
},
|
|
5963
|
+
children: [
|
|
5964
|
+
/* @__PURE__ */ jsx(Typography, { variant: "omega", textAlign: "center", children: formatMessage({
|
|
5965
|
+
id: getTranslation("settings.email_warning"),
|
|
5966
|
+
defaultMessage: "Turning off Email MFA will disable Email OTP for all users who have it enabled."
|
|
5967
|
+
}) }),
|
|
5968
|
+
/* @__PURE__ */ jsx(Typography, { textAlign: "center", fontWeight: "semiBold", children: formatMessage({
|
|
5969
|
+
id: getTranslation("app.confirm.body"),
|
|
5970
|
+
defaultMessage: "Are you sure?"
|
|
5971
|
+
}) })
|
|
5972
|
+
]
|
|
5973
|
+
}
|
|
5974
|
+
),
|
|
5733
5975
|
/* @__PURE__ */ jsxs(
|
|
5734
5976
|
WarningAlert,
|
|
5735
5977
|
{
|