@translationstudio/translationstudio-strapi-extension 1.1.0 → 1.1.3
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 +1 -1
- package/dist/_chunks/{App-jiozoQyG.mjs → App-Cq1SRR-L.mjs} +148 -82
- package/dist/_chunks/{App-rdXR_woe.js → App-DkdbSZwI.js} +146 -80
- package/dist/admin/index.js +7 -13
- package/dist/admin/index.mjs +7 -13
- package/dist/server/index.js +330 -220
- package/dist/server/index.mjs +330 -220
- package/dist/server/src/controllers/controller.d.ts +2 -0
- package/dist/server/src/controllers/index.d.ts +2 -0
- package/dist/server/src/index.d.ts +5 -0
- package/dist/server/src/services/functions/exportData/jsonToHtml.d.ts +6 -2
- package/dist/server/src/services/functions/importData/htmlToJson.d.ts +1 -2
- package/dist/server/src/services/functions/importData/parseInlineElements.d.ts +21 -1
- package/dist/server/src/services/functions/importData/processComponentFields.d.ts +1 -1
- package/dist/server/src/services/functions/importData/updateEntry.d.ts +1 -1
- package/dist/server/src/services/index.d.ts +3 -0
- package/dist/server/src/services/service.d.ts +5 -2
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -22,7 +22,7 @@ Follow these steps:
|
|
|
22
22
|
|
|
23
23
|
1. run `npm install -g yalc` in this folder
|
|
24
24
|
2. run `npm install` (if there are errors, add `--legacy-peer-deps`)
|
|
25
|
-
3. run `npm run:
|
|
25
|
+
3. run `npm run watch:link` in this folder
|
|
26
26
|
4. Create a new strapi project and enter the folder
|
|
27
27
|
5. run `npx yalc add --link _translationstudio-strapi-extension_`
|
|
28
28
|
6. start strapi in development mode
|
|
@@ -1,36 +1,76 @@
|
|
|
1
|
-
import { jsxs, jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { getFetchClient, Page } from "@strapi/strapi/admin";
|
|
3
3
|
import { Routes, Route } from "react-router-dom";
|
|
4
|
-
import { Main, Box, Alert,
|
|
4
|
+
import { Main, Box, Alert, Grid, Typography, TextInput, Button, Switch } from "@strapi/design-system";
|
|
5
5
|
import { useState, useEffect } from "react";
|
|
6
|
+
import { ArrowClockwise, Play } from "@strapi/icons";
|
|
6
7
|
const TSlogoFarbig = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20id='Ebene_1'%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201444.47%20635.72'%3e%3cdefs%3e%3cstyle%3e.cls-1{fill:%23e94642;}.cls-2{fill:%23231f20;}.cls-3{fill:%23a51d78;}%3c/style%3e%3c/defs%3e%3cpath%20class='cls-2'%20d='M1151.68,294.37c34.28,0,50.11,19.74,50.11,59.01v56.4c0,6.94-3.91,10.85-10.85,10.85h-2.6c-6.94,0-10.84-3.9-10.84-10.85v-54.45c0-27.12-10.41-39.91-33.41-39.91s-32.97,15.4-32.97,42.74v51.63c0,6.94-3.91,10.85-10.85,10.85h-2.6c-6.94,0-10.85-3.9-10.85-10.85v-102.39c0-6.94,3.91-10.85,10.85-10.85h2.6c6.94,0,10.85,3.91,10.85,10.85v12.34c5.64-14.39,19.73-25.36,40.56-25.36h0Z'/%3e%3cpath%20class='cls-2'%20d='M0,313.78v55.76c0,37.96,14.53,51.2,46.42,51.2h0c1.96,0,4.12-.03,6.29-.22,6.9-.65,9.8-4.45,9.11-11.07-.61-5.88-4.99-8.24-11.71-8.24-18.88,0-25.6-8.9-25.6-34.49v-52.94h25.81c6.94,0,10.85-3.47,10.85-9.54s-3.9-9.33-10.85-9.33H24.51v-15.83c0-7.59-4.34-11.28-11.93-9.55l-3.04,.65c-6.29,1.3-9.54,5.21-9.54,11.71v31.89Z'/%3e%3cpath%20class='cls-2'%20d='M139.49,295.02c7.38,0,11.06,4.77,10.2,11.71l-.22,1.74c-.65,6.94-4.77,9.54-11.93,9.54-20.39,.43-30.16,15.19-30.16,41.22v50.55c0,6.94-3.9,10.85-10.85,10.85h-2.6c-6.94,0-10.85-3.9-10.85-10.85v-102.39c0-6.94,3.9-10.85,10.85-10.85h2.6c6.94,0,10.85,3.69,10.85,10.41v10.41c3.91-11.07,13.89-22.34,32.1-22.34h0Z'/%3e%3cpath%20class='cls-2'%20d='M259.67,358.59c0-27.12-15.84-43.82-38.83-43.82s-38.4,16.49-38.4,43.82,15.62,44.04,38.83,44.04,38.4-16.7,38.4-44.04m-101.53,0c0-42.74,26.03-64.43,56.84-64.43,19.52,0,36.88,9.54,44.04,26.69v-13.45c0-6.94,3.9-10.85,10.85-10.85h2.6c6.94,0,10.85,3.9,10.85,10.85v102.18c0,6.94-3.9,10.85-10.85,10.85h-2.6c-6.94,0-10.85-3.9-10.85-10.85v-12.58c-6.94,16.7-24.51,26.47-43.82,26.47-30.81,0-57.06-21.91-57.06-64.87'/%3e%3cpath%20class='cls-2'%20d='M380.06,294.37c34.28,0,50.11,19.74,50.11,59.01v56.4c0,6.94-3.91,10.85-10.85,10.85h-2.6c-6.94,0-10.85-3.9-10.85-10.85v-54.45c0-27.12-10.41-39.91-33.41-39.91s-32.98,15.4-32.98,42.74v51.63c0,6.94-3.9,10.85-10.85,10.85h-2.6c-6.94,0-10.85-3.9-10.85-10.85v-102.39c0-6.94,3.91-10.85,10.85-10.85h2.6c6.94,0,10.85,3.91,10.85,10.85v12.34c5.64-14.39,19.73-25.36,40.57-25.36h0Z'/%3e%3cpath%20class='cls-2'%20d='M508.94,422.81c-20.8,0-42.78-8.33-53.19-21.48-4.44-5.61-2.26-11.49,4.99-13.67l2.17-.65c4.75-1.43,8.02-1.28,14.32,4.36,8.65,7.74,20.41,10.61,31.71,10.61,18.05,0,28.81-6.44,28.81-17.36,0-28.63-80.45-5.9-80.45-54.24,0-22.87,23.1-36.01,49.75-36.01,16.09,0,36.22,6.5,47,17.79,5.1,5.33,3.34,11.34-3.68,13.45l-2.17,.65c-5.86,1.76-8.85-.39-14.53-3.84-8.11-4.92-16.87-8.09-26.22-8.09-15.64,0-26.27,5.18-26.27,14.91,0,27.74,81.1,4.51,81.1,54.72,0,23.06-22.28,38.83-53.32,38.83h0Z'/%3e%3cpath%20class='cls-2'%20d='M585.05,409.79v-142.75c0-6.94,3.9-10.85,10.85-10.85h2.82c6.94,0,10.85,3.9,10.85,10.85v142.75c0,6.94-3.91,10.85-10.85,10.85h-2.82c-6.94,0-10.85-3.91-10.85-10.85'/%3e%3cpath%20class='cls-2'%20d='M737.56,358.59c0-27.12-15.84-43.82-38.84-43.82s-38.4,16.49-38.4,43.82,15.62,44.04,38.83,44.04,38.4-16.7,38.4-44.04m-101.53,0c0-42.74,26.03-64.43,56.84-64.43,19.52,0,36.88,9.54,44.04,26.69v-13.45c0-6.94,3.9-10.85,10.85-10.85h2.6c6.94,0,10.85,3.9,10.85,10.85v102.18c0,6.94-3.9,10.85-10.85,10.85h-2.6c-6.94,0-10.85-3.9-10.85-10.85v-12.58c-6.94,16.7-24.51,26.47-43.82,26.47-30.81,0-57.06-21.91-57.06-64.87'/%3e%3cpath%20class='cls-2'%20d='M800.25,315.42v55.76c0,37.96,14.53,51.2,46.42,51.2h0c1.95,0,4.12-.03,6.29-.22,6.89-.65,9.8-4.45,9.11-11.07-.61-5.88-4.99-8.24-11.71-8.24-18.87,0-25.6-8.9-25.6-34.49v-52.94h25.81c6.94,0,10.85-3.47,10.85-9.55s-3.91-9.33-10.85-9.33h-25.81v-15.83c0-7.59-4.34-11.28-11.93-9.54l-3.04,.65c-6.29,1.3-9.55,5.21-9.55,11.71v31.89Z'/%3e%3cpath%20class='cls-2'%20d='M883.72,409.79v-102.4c0-6.94,3.83-10.85,10.65-10.85h2.77c6.82,0,10.65,3.9,10.65,10.85v102.4c0,6.94-3.83,10.85-10.65,10.85h-2.77c-6.81,0-10.65-3.91-10.65-10.85m-2.05-142.96c0-8.24,6.08-13.02,14.32-13.02,7.59,0,14.32,4.77,14.32,13.02s-6.72,13.02-14.32,13.02c-8.24,0-14.32-4.77-14.32-13.02'/%3e%3cpath%20class='cls-2'%20d='M1036.06,358.59c0-27.12-15.62-43.82-38.62-43.82s-38.4,16.49-38.4,43.82,15.4,44.04,38.61,44.04,38.4-16.7,38.4-44.04m-101.31,0c0-44.69,31.02-64.43,62.69-64.43s62.91,19.74,62.91,64.43-31.02,64.87-62.7,64.87-62.91-19.74-62.91-64.87'/%3e%3cpath%20class='cls-2'%20d='M555.77,635.72c-20.98,0-43.14-8.4-53.65-21.66-4.48-5.66-2.27-11.59,5.03-13.78l2.19-.66c4.79-1.44,8.09-1.29,14.43,4.4,8.73,7.81,20.59,10.69,31.98,10.69,18.2,0,29.05-6.49,29.05-17.5,0-28.88-81.14-5.95-81.14-54.7,0-23.07,23.3-36.31,50.17-36.31,16.23,0,36.53,6.55,47.41,17.94,5.14,5.38,3.37,11.43-3.72,13.56l-2.19,.66c-5.91,1.77-8.92-.39-14.66-3.87-8.18-4.96-17.02-8.16-26.45-8.16-15.78,0-26.5,5.22-26.5,15.04,0,27.98,81.79,4.55,81.79,55.18,0,23.26-22.47,39.16-53.78,39.16h0Z'/%3e%3cpath%20class='cls-2'%20d='M639.98,526.42v56.23c0,38.29,14.66,51.63,46.82,51.63h0c1.97,0,4.16-.03,6.34-.22,6.96-.66,9.89-4.49,9.19-11.16-.61-5.93-5.03-8.31-11.81-8.31-19.03,0-25.82-8.97-25.82-34.79v-53.38h26.03c7,0,10.94-3.5,10.94-9.63s-3.94-9.41-10.94-9.41h-26.03v-15.97c0-7.66-4.38-11.38-12.03-9.63l-3.06,.66c-6.34,1.31-9.63,5.25-9.63,11.81v32.16Z'/%3e%3cpath%20class='cls-2'%20d='M826.59,508.39c7,0,10.94,3.94,10.94,10.94v103.27c0,7-3.94,10.94-10.94,10.94h-2.62c-7,0-10.94-3.94-10.94-10.94v-12.45c-5.69,14.51-19.9,25.57-40.91,25.57-34.57,0-50.54-19.91-50.54-59.51v-56.89c0-7,3.94-10.93,10.94-10.93h2.63c7,0,10.94,3.93,10.94,10.93v54.92c0,27.35,10.5,40.26,33.69,40.26s33.26-15.53,33.26-43.1v-52.07c0-7,3.94-10.93,10.94-10.93h2.62Z'/%3e%3cpath%20class='cls-2'%20d='M967.71,570.31c0-27.35-15.75-44.19-39.16-44.19s-38.72,16.63-38.72,44.19,15.75,44.41,39.16,44.41,38.72-16.85,38.72-44.41m-102.39,0c0-43.1,26.25-64.98,57.32-64.98,19.69,0,37.41,9.63,44.41,26.91v-54.26c0-7,3.94-10.94,10.94-10.94h2.62c7,0,10.94,3.94,10.94,10.94v143.74c0,7-3.94,10.94-10.94,10.94h-2.62c-7,0-10.94-3.94-10.94-10.94v-12.69c-7,16.85-24.72,26.69-44.19,26.69-31.07,0-57.54-22.09-57.54-65.41'/%3e%3cpath%20class='cls-2'%20d='M1023.66,623.38v-103.27c0-7,3.87-10.94,10.74-10.94h2.79c6.87,0,10.74,3.94,10.74,10.94v103.27c0,7-3.87,10.94-10.74,10.94h-2.79c-6.87,0-10.74-3.94-10.74-10.94m-2.07-144.18c0-8.31,6.13-13.13,14.44-13.13,7.66,0,14.44,4.81,14.44,13.13s-6.78,13.13-14.44,13.13c-8.31,0-14.44-4.81-14.44-13.13'/%3e%3cpath%20class='cls-2'%20d='M1177.29,570.31c0-27.35-15.75-44.19-38.94-44.19s-38.72,16.63-38.72,44.19,15.53,44.41,38.94,44.41,38.72-16.85,38.72-44.41m-102.17,0c0-45.07,31.29-64.98,63.23-64.98s63.45,19.91,63.45,64.98-31.29,65.41-63.23,65.41-63.45-19.91-63.45-65.41'/%3e%3cpath%20class='cls-3'%20d='M1366.99,177.21c7.75,6.65,16.32,15.32,24.3,26.23,19.82,27.08,29.56,59.09,28.94,95.13-.29,16.74-3.42,30.61-9.31,41.23-.55,1-1.14,1.99-1.74,2.94-1.17,1.86-2.46,3.67-3.82,5.37-3.28,4.11-7.15,7.78-11.48,10.91-.85,.61-1.73,1.21-2.61,1.79-1.77,1.14-3.63,2.22-5.54,3.2-2.85,1.46-5.89,2.76-9.03,3.84-2.08,.72-4.25,1.36-6.44,1.91-6.58,1.65-13.54,2.48-20.67,2.48-19.29,0-36.82-6.22-49.35-17.5-14.34-12.91-21.61-31.67-21.61-55.75,0-30.01,11.74-53.91,31.41-63.94,15.09-7.69,29.61-15.71,41.22-29.17,7.24-8.39,12.46-17.89,15.72-28.67m-14.08-37.87c-3.24,0-6.11,2.04-6.11,5.55h0c.97,42.1-22.01,55.46-47.74,68.58-26.46,13.49-44.63,43.79-44.63,85.51,0,66.7,47.26,97.47,95.17,97.47,8.98,0,17.93-1.05,26.54-3.2,2.87-.72,5.7-1.56,8.49-2.52,4.18-1.45,8.24-3.17,12.16-5.18,2.61-1.34,5.16-2.81,7.63-4.41,1.24-.8,2.45-1.63,3.65-2.49,5.98-4.32,11.44-9.45,16.21-15.43,1.91-2.39,3.71-4.92,5.39-7.58,.84-1.33,1.65-2.7,2.42-4.1,7.76-14,11.99-31.44,12.35-52.56,1.63-95.85-61.94-144.16-87.99-158.76-.99-.56-2.19-.88-3.54-.88h0Z'/%3e%3cpath%20class='cls-1'%20d='M1234.82,24.21c19.29,0,36.82,6.22,49.35,17.5,14.34,12.91,21.61,31.67,21.61,55.75,0,30.01-11.74,53.91-31.41,63.94-15.09,7.69-29.61,15.71-41.22,29.17-7.24,8.39-12.46,17.89-15.72,28.67-7.75-6.65-16.32-15.32-24.3-26.23-19.82-27.08-29.56-59.09-28.94-95.13,.29-16.74,3.42-30.61,9.31-41.23,.55-1,1.14-1.98,1.74-2.93,1.17-1.86,2.46-3.67,3.82-5.37,3.28-4.11,7.15-7.78,11.48-10.91,.85-.61,1.73-1.21,2.61-1.79,1.77-1.14,3.63-2.22,5.54-3.2,2.85-1.46,5.89-2.76,9.03-3.84,2.08-.72,4.25-1.36,6.44-1.91,6.58-1.65,13.54-2.48,20.67-2.48m0-24.21c-8.98,0-17.93,1.05-26.54,3.2-2.87,.72-5.7,1.56-8.49,2.52-4.18,1.45-8.24,3.17-12.16,5.18-2.61,1.34-5.16,2.81-7.63,4.41-1.24,.8-2.45,1.63-3.65,2.49-5.98,4.32-11.44,9.45-16.21,15.43-1.91,2.39-3.71,4.92-5.39,7.58-.84,1.33-1.65,2.7-2.42,4.1-7.76,14-11.99,31.44-12.35,52.56-1.63,95.85,61.94,144.16,87.99,158.76,.99,.56,2.19,.88,3.54,.88,3.24,0,6.11-2.04,6.11-5.55h0c-.97-42.1,22.01-55.46,47.74-68.58,26.46-13.49,44.63-43.79,44.63-85.51,0-66.7-47.26-97.47-95.17-97.47h0Z'/%3e%3c/svg%3e";
|
|
8
|
+
async function loadLicense(fnGet) {
|
|
9
|
+
try {
|
|
10
|
+
const response = await fnGet("/translationstudio/getLicense");
|
|
11
|
+
if (typeof response.data?.license === "string")
|
|
12
|
+
return response.data.license;
|
|
13
|
+
} catch (err) {
|
|
14
|
+
console.error(err);
|
|
15
|
+
}
|
|
16
|
+
return "";
|
|
17
|
+
}
|
|
18
|
+
async function loadDevUrl(fnGet) {
|
|
19
|
+
try {
|
|
20
|
+
const response = await fnGet("/translationstudio/devurl");
|
|
21
|
+
if (typeof response.data?.url === "string")
|
|
22
|
+
return response.data.url;
|
|
23
|
+
} catch (err) {
|
|
24
|
+
console.error(err);
|
|
25
|
+
}
|
|
26
|
+
return "";
|
|
27
|
+
}
|
|
28
|
+
async function updateDevlUrl(fnPost, url) {
|
|
29
|
+
try {
|
|
30
|
+
const response = await fnPost("/translationstudio/devurl", { url });
|
|
31
|
+
console.log(response.status);
|
|
32
|
+
if (typeof response.data?.success === "boolean")
|
|
33
|
+
return response.data.success;
|
|
34
|
+
} catch (err) {
|
|
35
|
+
console.error(err);
|
|
36
|
+
}
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
const TextareaStyle = {
|
|
40
|
+
color: "grey",
|
|
41
|
+
width: "100%",
|
|
42
|
+
display: "block",
|
|
43
|
+
backgroundColor: "#f6f6f6",
|
|
44
|
+
cursor: "default"
|
|
45
|
+
};
|
|
46
|
+
const BUttonStyle = { backgroundColor: "#e94642", border: "none", paddingTop: "0.6em", paddingBottom: "0.6em" };
|
|
7
47
|
const SettingsPage = () => {
|
|
8
48
|
const [licenseValue, setLicenseValue] = useState("");
|
|
9
49
|
const [isLoading, setIsLoading] = useState(true);
|
|
10
50
|
const [tokenValue, setTokenValue] = useState("");
|
|
11
51
|
const [isLoadingToken, setIsLoadingToken] = useState(false);
|
|
52
|
+
const [showDevOptions, setShowDevOptions] = useState(false);
|
|
12
53
|
const [showAlert, setShowAlert] = useState(false);
|
|
13
54
|
const [alertType, setAlertType] = useState("success");
|
|
14
55
|
const [alertMessage, setAlertMessage] = useState("");
|
|
56
|
+
const [devUrl, setDevUrl] = useState("");
|
|
15
57
|
const { get, post } = getFetchClient();
|
|
16
58
|
useEffect(() => {
|
|
17
59
|
const getLicense = async () => {
|
|
18
60
|
setIsLoading(true);
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
console.error(err);
|
|
28
|
-
} finally {
|
|
29
|
-
setIsLoading(false);
|
|
61
|
+
const license = await loadLicense(get);
|
|
62
|
+
if (license)
|
|
63
|
+
setLicenseValue(license);
|
|
64
|
+
const dUrl = await loadDevUrl(get);
|
|
65
|
+
if (dUrl) {
|
|
66
|
+
console.log(dUrl);
|
|
67
|
+
setDevUrl(dUrl);
|
|
68
|
+
setShowDevOptions(true);
|
|
30
69
|
}
|
|
70
|
+
setIsLoading(false);
|
|
31
71
|
};
|
|
32
72
|
getLicense();
|
|
33
|
-
}, []);
|
|
73
|
+
}, [setLicenseValue, setDevUrl, setIsLoading, setShowDevOptions]);
|
|
34
74
|
useEffect(() => {
|
|
35
75
|
const fetchToken = async () => {
|
|
36
76
|
setIsLoadingToken(true);
|
|
@@ -50,7 +90,14 @@ const SettingsPage = () => {
|
|
|
50
90
|
fetchToken();
|
|
51
91
|
}, []);
|
|
52
92
|
const handleLicenseChange = (e) => {
|
|
53
|
-
setLicenseValue(e.target.value);
|
|
93
|
+
setLicenseValue(e.target.value.trim());
|
|
94
|
+
};
|
|
95
|
+
const handleUpdateUrl = async function() {
|
|
96
|
+
setIsLoading(true);
|
|
97
|
+
updateDevlUrl(post, devUrl).then(() => {
|
|
98
|
+
if (devUrl === "")
|
|
99
|
+
setShowDevOptions(false);
|
|
100
|
+
}).finally(() => setIsLoading(false));
|
|
54
101
|
};
|
|
55
102
|
const handleSaveLicense = async () => {
|
|
56
103
|
try {
|
|
@@ -86,6 +133,12 @@ const SettingsPage = () => {
|
|
|
86
133
|
setIsLoadingToken(false);
|
|
87
134
|
}
|
|
88
135
|
};
|
|
136
|
+
const onChangeDevOptions = function(val) {
|
|
137
|
+
if (val)
|
|
138
|
+
setShowDevOptions(val);
|
|
139
|
+
else
|
|
140
|
+
updateDevlUrl(post, "").finally(() => setShowDevOptions(val));
|
|
141
|
+
};
|
|
89
142
|
return /* @__PURE__ */ jsxs(Main, { children: [
|
|
90
143
|
showAlert && /* @__PURE__ */ jsx(
|
|
91
144
|
Box,
|
|
@@ -106,27 +159,27 @@ const SettingsPage = () => {
|
|
|
106
159
|
Box,
|
|
107
160
|
{
|
|
108
161
|
padding: 10,
|
|
109
|
-
paddingBottom: 0,
|
|
110
162
|
style: {
|
|
111
|
-
|
|
163
|
+
minHeight: "90vh",
|
|
112
164
|
marginTop: "5vh",
|
|
113
165
|
backgroundColor: "white",
|
|
114
166
|
color: "grey"
|
|
115
167
|
},
|
|
116
|
-
children: /* @__PURE__ */ jsxs(
|
|
117
|
-
/* @__PURE__ */ jsx(
|
|
168
|
+
children: /* @__PURE__ */ jsxs(Grid.Root, { children: [
|
|
169
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, children: /* @__PURE__ */ jsx(Box, { style: { textAlign: "right", width: "100%" }, children: /* @__PURE__ */ jsx(
|
|
118
170
|
"img",
|
|
119
171
|
{
|
|
120
172
|
src: TSlogoFarbig,
|
|
121
173
|
alt: "Translation Studio Logo",
|
|
122
174
|
style: {
|
|
123
|
-
|
|
124
|
-
height: "auto"
|
|
175
|
+
width: "300px",
|
|
176
|
+
height: "auto",
|
|
177
|
+
display: "inline-block"
|
|
125
178
|
}
|
|
126
179
|
}
|
|
127
|
-
),
|
|
128
|
-
/* @__PURE__ */ jsx(Typography, { variant: "beta", style: {
|
|
129
|
-
/* @__PURE__ */ jsxs(Typography, { variant: "charlie", children: [
|
|
180
|
+
) }) }),
|
|
181
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingTop: "2em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "beta", style: { width: "100%" }, children: "translationstudio License" }) }),
|
|
182
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingBottom: "1em" }, children: /* @__PURE__ */ jsxs(Typography, { variant: "charlie", style: { width: "100%" }, children: [
|
|
130
183
|
"You can create or revoke a license at",
|
|
131
184
|
" ",
|
|
132
185
|
/* @__PURE__ */ jsx(
|
|
@@ -135,14 +188,13 @@ const SettingsPage = () => {
|
|
|
135
188
|
href: "https://account.translationstudio.tech/",
|
|
136
189
|
target: "_blank",
|
|
137
190
|
rel: "noopener noreferrer",
|
|
138
|
-
style: { textDecoration: "none", color: "#e94642"
|
|
191
|
+
style: { textDecoration: "none", color: "#e94642" },
|
|
139
192
|
children: "account.translationstudio.tech"
|
|
140
193
|
}
|
|
141
|
-
)
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
Textarea,
|
|
194
|
+
)
|
|
195
|
+
] }) }),
|
|
196
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 10, children: /* @__PURE__ */ jsx(Box, { style: { width: "100%" }, children: /* @__PURE__ */ jsx(
|
|
197
|
+
TextInput,
|
|
146
198
|
{
|
|
147
199
|
name: "jwt-token",
|
|
148
200
|
label: "JWT Token",
|
|
@@ -151,20 +203,16 @@ const SettingsPage = () => {
|
|
|
151
203
|
value: licenseValue,
|
|
152
204
|
onChange: handleLicenseChange,
|
|
153
205
|
disabled: isLoading,
|
|
154
|
-
style:
|
|
155
|
-
color: "grey",
|
|
156
|
-
width: "25vw",
|
|
157
|
-
textAlign: "left",
|
|
158
|
-
backgroundColor: "#f6f6f6",
|
|
159
|
-
cursor: "text"
|
|
160
|
-
}
|
|
206
|
+
style: TextareaStyle
|
|
161
207
|
}
|
|
162
|
-
) }),
|
|
163
|
-
/* @__PURE__ */ jsx(
|
|
208
|
+
) }) }),
|
|
209
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 2, children: /* @__PURE__ */ jsx(
|
|
164
210
|
Button,
|
|
165
211
|
{
|
|
166
212
|
onClick: handleSaveLicense,
|
|
167
|
-
|
|
213
|
+
disabled: isLoading,
|
|
214
|
+
style: BUttonStyle,
|
|
215
|
+
size: "L",
|
|
168
216
|
startIcon: /* @__PURE__ */ jsx(
|
|
169
217
|
"svg",
|
|
170
218
|
{
|
|
@@ -184,10 +232,11 @@ const SettingsPage = () => {
|
|
|
184
232
|
),
|
|
185
233
|
children: "Save license"
|
|
186
234
|
}
|
|
187
|
-
) })
|
|
188
|
-
/* @__PURE__ */ jsx(Typography, { variant: "beta", children: "Authorize
|
|
189
|
-
/* @__PURE__ */ jsx(
|
|
190
|
-
|
|
235
|
+
) }),
|
|
236
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingTop: "3em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "beta", children: "Authorize translationstudio requests" }) }),
|
|
237
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingBottom: "1em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "charlie", style: { width: "100%" }, children: "When translationstudio connects with this plugin it will use the following access key to authorize itself." }) }),
|
|
238
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 10, children: /* @__PURE__ */ jsx(Box, { style: { width: "100%" }, children: /* @__PURE__ */ jsx(
|
|
239
|
+
TextInput,
|
|
191
240
|
{
|
|
192
241
|
name: "access-token",
|
|
193
242
|
label: "Access Key",
|
|
@@ -197,69 +246,86 @@ const SettingsPage = () => {
|
|
|
197
246
|
onChange: () => {
|
|
198
247
|
},
|
|
199
248
|
disabled: true,
|
|
200
|
-
style:
|
|
201
|
-
color: "grey",
|
|
202
|
-
width: "25vw",
|
|
203
|
-
textAlign: "left",
|
|
204
|
-
backgroundColor: "#f6f6f6",
|
|
205
|
-
cursor: "default"
|
|
206
|
-
}
|
|
249
|
+
style: TextareaStyle
|
|
207
250
|
}
|
|
208
|
-
) }),
|
|
209
|
-
/* @__PURE__ */ jsx(
|
|
251
|
+
) }) }),
|
|
252
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 2, children: /* @__PURE__ */ jsx(
|
|
210
253
|
Button,
|
|
211
254
|
{
|
|
212
255
|
onClick: handleGenerateToken,
|
|
213
|
-
style:
|
|
256
|
+
style: BUttonStyle,
|
|
214
257
|
disabled: isLoadingToken,
|
|
215
258
|
loading: isLoadingToken,
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
}
|
|
232
|
-
),
|
|
233
|
-
children: isLoadingToken ? "Generating..." : tokenValue ? "Generate new access key" : "Generate access key"
|
|
259
|
+
size: "L",
|
|
260
|
+
startIcon: /* @__PURE__ */ jsx(ArrowClockwise, {}),
|
|
261
|
+
children: isLoadingToken ? "Generating..." : tokenValue ? "New access key" : "Create access key"
|
|
262
|
+
}
|
|
263
|
+
) }),
|
|
264
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingTop: "5em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "beta", children: "Customization" }) }),
|
|
265
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingBottom: "1em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "charlie", style: { width: "100%" }, children: "You will not need these settings, but you might want to customize your translationstudio instance." }) }),
|
|
266
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, children: /* @__PURE__ */ jsx(
|
|
267
|
+
Switch,
|
|
268
|
+
{
|
|
269
|
+
checked: showDevOptions,
|
|
270
|
+
onCheckedChange: () => onChangeDevOptions(!showDevOptions),
|
|
271
|
+
onLabel: "Use custom translationstudio URL",
|
|
272
|
+
offLabel: "Custom translationstudio URL is currently disabled (default)",
|
|
273
|
+
visibleLabels: true
|
|
234
274
|
}
|
|
235
275
|
) }),
|
|
236
|
-
|
|
237
|
-
"
|
|
276
|
+
showDevOptions && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
277
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingTop: "2em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "beta", children: "Use custom translationstudio URL." }) }),
|
|
278
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingBottom: "1em" }, children: /* @__PURE__ */ jsx(Typography, { variant: "delta", children: "This is usually only necessary for development purposes." }) }),
|
|
279
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 10, children: /* @__PURE__ */ jsx(Box, { style: { width: "100%" }, children: /* @__PURE__ */ jsx(
|
|
280
|
+
TextInput,
|
|
281
|
+
{
|
|
282
|
+
onChange: (e) => setDevUrl(e.target.value.trim()),
|
|
283
|
+
name: "devurl",
|
|
284
|
+
label: "Custom translationstudio url",
|
|
285
|
+
placeholder: "Paste your custom translationstudio url here",
|
|
286
|
+
"aria-label": "translationstudio custom url",
|
|
287
|
+
value: devUrl,
|
|
288
|
+
style: TextareaStyle
|
|
289
|
+
}
|
|
290
|
+
) }) }),
|
|
291
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 2, children: /* @__PURE__ */ jsx(
|
|
292
|
+
Button,
|
|
293
|
+
{
|
|
294
|
+
onClick: handleUpdateUrl,
|
|
295
|
+
style: BUttonStyle,
|
|
296
|
+
disabled: isLoadingToken,
|
|
297
|
+
loading: isLoadingToken,
|
|
298
|
+
startIcon: /* @__PURE__ */ jsx(Play, {}),
|
|
299
|
+
size: "L",
|
|
300
|
+
children: "Update URL"
|
|
301
|
+
}
|
|
302
|
+
) })
|
|
303
|
+
] }),
|
|
304
|
+
/* @__PURE__ */ jsx(Grid.Item, { xs: 12, style: { paddingTop: "4em" }, children: /* @__PURE__ */ jsxs(Typography, { variant: "sigma", style: { width: "100%", textAlign: "right" }, children: [
|
|
305
|
+
"If you do not have a translationstudio account, please create one at",
|
|
238
306
|
" ",
|
|
239
307
|
/* @__PURE__ */ jsx(
|
|
240
308
|
"a",
|
|
241
309
|
{
|
|
242
|
-
href: "https://
|
|
310
|
+
href: "https://account.translationstudio.tech/",
|
|
243
311
|
target: "_blank",
|
|
244
312
|
rel: "noopener noreferrer",
|
|
245
313
|
style: { textDecoration: "none", color: "#e94642" },
|
|
246
|
-
children: "translationstudio"
|
|
314
|
+
children: "account.translationstudio.tech"
|
|
247
315
|
}
|
|
248
316
|
),
|
|
249
|
-
" ",
|
|
250
|
-
"account, please create one at",
|
|
251
|
-
" ",
|
|
317
|
+
". You can find further information at ",
|
|
252
318
|
/* @__PURE__ */ jsx(
|
|
253
319
|
"a",
|
|
254
320
|
{
|
|
255
|
-
href: "https://
|
|
321
|
+
href: "https://www.translationstudio.tech/",
|
|
256
322
|
target: "_blank",
|
|
257
323
|
rel: "noopener noreferrer",
|
|
258
324
|
style: { textDecoration: "none", color: "#e94642" },
|
|
259
|
-
children: "
|
|
325
|
+
children: "translationstudio.tech"
|
|
260
326
|
}
|
|
261
327
|
),
|
|
262
|
-
"
|
|
328
|
+
" "
|
|
263
329
|
] }) })
|
|
264
330
|
] })
|
|
265
331
|
}
|