@plutonhq/core-frontend 0.1.22 → 0.1.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-lib/@types/index.js +4 -1
- package/dist-lib/@types/index.js.map +1 -1
- package/dist-lib/@types/plans.d.ts +11 -20
- package/dist-lib/@types/plans.d.ts.map +1 -1
- package/dist-lib/@types/settings.d.ts +14 -0
- package/dist-lib/@types/settings.d.ts.map +1 -1
- package/dist-lib/@types/settings.js +34 -0
- package/dist-lib/@types/settings.js.map +1 -0
- package/dist-lib/components/Plan/PlanSettings/PlanAdvancedSettings.js +49 -47
- package/dist-lib/components/Plan/PlanSettings/PlanAdvancedSettings.js.map +1 -1
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettings.d.ts +7 -4
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettings.d.ts.map +1 -1
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettings.js +235 -52
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettings.js.map +1 -1
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettingsTester.d.ts +9 -0
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettingsTester.d.ts.map +1 -0
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettingsTester.js +62 -0
- package/dist-lib/components/Plan/PlanSettings/PlanNotificationSettingsTester.js.map +1 -0
- package/dist-lib/components/Plan/PlanSettings/PlanPruneSettings.js +2 -2
- package/dist-lib/components/Plan/PlanSettings/PlanPruneSettings.js.map +1 -1
- package/dist-lib/components/Plan/PlanSettings/PlanSettings.module.scss.js +56 -40
- package/dist-lib/components/Plan/PlanSettings/PlanSettings.module.scss.js.map +1 -1
- package/dist-lib/components/Settings/GeneralSettings/GeneralSettings.d.ts.map +1 -1
- package/dist-lib/components/Settings/GeneralSettings/GeneralSettings.js +16 -8
- package/dist-lib/components/Settings/GeneralSettings/GeneralSettings.js.map +1 -1
- package/dist-lib/components/Settings/IntegrationSettings/IntegrationSettings.d.ts.map +1 -1
- package/dist-lib/components/Settings/IntegrationSettings/IntegrationSettings.js +52 -47
- package/dist-lib/components/Settings/IntegrationSettings/IntegrationSettings.js.map +1 -1
- package/dist-lib/components/Settings/IntegrationSettings/IntegrationSettings.module.scss.js +12 -6
- package/dist-lib/components/Settings/IntegrationSettings/IntegrationSettings.module.scss.js.map +1 -1
- package/dist-lib/components/Settings/IntegrationSettings/NtfySettings.d.ts +9 -0
- package/dist-lib/components/Settings/IntegrationSettings/NtfySettings.d.ts.map +1 -0
- package/dist-lib/components/Settings/IntegrationSettings/NtfySettings.js +79 -0
- package/dist-lib/components/Settings/IntegrationSettings/NtfySettings.js.map +1 -0
- package/dist-lib/components/Settings/IntegrationSettings/SMTPSettings.d.ts +4 -3
- package/dist-lib/components/Settings/IntegrationSettings/SMTPSettings.d.ts.map +1 -1
- package/dist-lib/components/Settings/IntegrationSettings/SMTPSettings.js +37 -35
- package/dist-lib/components/Settings/IntegrationSettings/SMTPSettings.js.map +1 -1
- package/dist-lib/components/Settings/IntegrationSettings/ValidateEmailIntegration.d.ts +10 -0
- package/dist-lib/components/Settings/IntegrationSettings/ValidateEmailIntegration.d.ts.map +1 -0
- package/dist-lib/components/Settings/IntegrationSettings/ValidateEmailIntegration.js +49 -0
- package/dist-lib/components/Settings/IntegrationSettings/ValidateEmailIntegration.js.map +1 -0
- package/dist-lib/components/Storage/EditStorage/EditStorage.js +10 -10
- package/dist-lib/components/Storage/EditStorage/EditStorage.js.map +1 -1
- package/dist-lib/components/common/Icon/Icon.d.ts.map +1 -1
- package/dist-lib/components/common/Icon/Icon.js +15 -1
- package/dist-lib/components/common/Icon/Icon.js.map +1 -1
- package/dist-lib/components/index.d.ts +3 -0
- package/dist-lib/components/index.d.ts.map +1 -1
- package/dist-lib/components.js +114 -108
- package/dist-lib/components.js.map +1 -1
- package/dist-lib/providers/s3compatible.png +0 -0
- package/dist-lib/services/plans.d.ts +13 -1
- package/dist-lib/services/plans.d.ts.map +1 -1
- package/dist-lib/services/plans.js +88 -61
- package/dist-lib/services/plans.js.map +1 -1
- package/dist-lib/services/settings.d.ts +3 -2
- package/dist-lib/services/settings.d.ts.map +1 -1
- package/dist-lib/services/settings.js +25 -25
- package/dist-lib/services/settings.js.map +1 -1
- package/dist-lib/services.js +102 -100
- package/dist-lib/styles/core-frontend.css +1 -1
- package/dist-lib/utils/constants.d.ts.map +1 -1
- package/dist-lib/utils/constants.js +28 -5
- package/dist-lib/utils/constants.js.map +1 -1
- package/dist-lib/utils/helpers.d.ts +1 -0
- package/dist-lib/utils/helpers.d.ts.map +1 -1
- package/dist-lib/utils/helpers.js +17 -10
- package/dist-lib/utils/helpers.js.map +1 -1
- package/dist-lib/utils.js +28 -27
- package/package.json +1 -1
- package/src/@types/plans.ts +11 -20
- package/src/@types/settings.ts +43 -0
- package/src/components/Plan/PlanSettings/PlanAdvancedSettings.tsx +4 -4
- package/src/components/Plan/PlanSettings/PlanNotificationSettings.tsx +244 -47
- package/src/components/Plan/PlanSettings/PlanNotificationSettingsTester.tsx +85 -0
- package/src/components/Plan/PlanSettings/PlanPruneSettings.tsx +2 -2
- package/src/components/Plan/PlanSettings/PlanSettings.module.scss +71 -0
- package/src/components/Settings/GeneralSettings/GeneralSettings.tsx +6 -1
- package/src/components/Settings/IntegrationSettings/IntegrationSettings.module.scss +16 -0
- package/src/components/Settings/IntegrationSettings/IntegrationSettings.tsx +45 -42
- package/src/components/Settings/IntegrationSettings/NtfySettings.tsx +106 -0
- package/src/components/Settings/IntegrationSettings/SMTPSettings.tsx +28 -19
- package/src/components/Settings/IntegrationSettings/ValidateEmailIntegration.tsx +58 -0
- package/src/components/Storage/EditStorage/EditStorage.tsx +1 -1
- package/src/components/common/Icon/Icon.tsx +16 -0
- package/src/components/index.ts +3 -0
- package/src/services/plans.ts +38 -1
- package/src/services/settings.ts +4 -4
- package/src/utils/constants.ts +23 -0
- package/src/utils/helpers.ts +9 -0
- /package/dist-lib/providers/{azureBlob.png → azureblob.png} +0 -0
- /package/dist-lib/providers/{azureFiles.png → azurefiles.png} +0 -0
- /package/dist-lib/providers/{files.png → filescom.png} +0 -0
- /package/dist-lib/providers/{oracle.png → oracleobjectstorage.png} +0 -0
- /package/dist-lib/providers/{proton.png → protondrive.png} +0 -0
package/dist-lib/@types/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -33,6 +33,16 @@ export type PlanNotification = {
|
|
|
33
33
|
authToken: string;
|
|
34
34
|
tags: string;
|
|
35
35
|
};
|
|
36
|
+
slack: {
|
|
37
|
+
enabled: boolean;
|
|
38
|
+
case: PlanNotificationCase;
|
|
39
|
+
url: string;
|
|
40
|
+
};
|
|
41
|
+
discord: {
|
|
42
|
+
enabled: boolean;
|
|
43
|
+
case: PlanNotificationCase;
|
|
44
|
+
url: string;
|
|
45
|
+
};
|
|
36
46
|
};
|
|
37
47
|
export type PlanInterval = {
|
|
38
48
|
type: 'hourly' | 'daily' | 'weekly' | 'monthly' | 'days' | 'hours' | 'minutes';
|
|
@@ -86,26 +96,7 @@ export type PlanIntegritySettings = {
|
|
|
86
96
|
enabled: boolean;
|
|
87
97
|
interval: PlanInterval;
|
|
88
98
|
method: string;
|
|
89
|
-
notification:
|
|
90
|
-
email: {
|
|
91
|
-
enabled: boolean;
|
|
92
|
-
type: string;
|
|
93
|
-
emails: string;
|
|
94
|
-
};
|
|
95
|
-
webhook: {
|
|
96
|
-
enabled: boolean;
|
|
97
|
-
method: 'GET' | 'POST';
|
|
98
|
-
contentType: 'application/json' | 'application/x-www-form-urlencoded' | 'text/plain';
|
|
99
|
-
url: string;
|
|
100
|
-
};
|
|
101
|
-
push: {
|
|
102
|
-
enabled: boolean;
|
|
103
|
-
url: string;
|
|
104
|
-
authType: string;
|
|
105
|
-
authToken: string;
|
|
106
|
-
tags: string;
|
|
107
|
-
};
|
|
108
|
-
};
|
|
99
|
+
notification: PlanNotification;
|
|
109
100
|
};
|
|
110
101
|
export type PlanScript = {
|
|
111
102
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/@types/plans.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/@types/plans.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,4 +17,18 @@ export interface LogItem {
|
|
|
17
17
|
deviceId?: string;
|
|
18
18
|
msg: string;
|
|
19
19
|
}
|
|
20
|
+
export interface NtfySettingsType {
|
|
21
|
+
authType: string;
|
|
22
|
+
authToken: string;
|
|
23
|
+
connected: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface IntegrationSettings {
|
|
26
|
+
smtp?: SmtpSettingsType;
|
|
27
|
+
ntfy?: NtfySettingsType;
|
|
28
|
+
}
|
|
29
|
+
export type IntegrationTypes = 'smtp' | 'sendgrid' | 'mailgun' | 'brevo' | 'resend' | 'awsSes' | 'ntfy';
|
|
30
|
+
export declare const INTEGRATIONS_AVAILABLE: Record<IntegrationTypes, {
|
|
31
|
+
name: string;
|
|
32
|
+
required: string[];
|
|
33
|
+
}>;
|
|
20
34
|
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/@types/settings.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,OAAO;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACd"}
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/@types/settings.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,OAAO;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IACjC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;AACxG,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,gBAAgB,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CA6BxF,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const e = {
|
|
2
|
+
smtp: {
|
|
3
|
+
name: "SMTP",
|
|
4
|
+
required: ["server", "port", "username", "password", "senderEmail"]
|
|
5
|
+
},
|
|
6
|
+
sendgrid: {
|
|
7
|
+
name: "SendGrid",
|
|
8
|
+
required: ["apiKey", "senderEmail"]
|
|
9
|
+
},
|
|
10
|
+
mailgun: {
|
|
11
|
+
name: "Mailgun",
|
|
12
|
+
required: ["apiKey", "domain", "senderEmail"]
|
|
13
|
+
},
|
|
14
|
+
brevo: {
|
|
15
|
+
name: "Brevo",
|
|
16
|
+
required: ["apiKey", "senderEmail"]
|
|
17
|
+
},
|
|
18
|
+
resend: {
|
|
19
|
+
name: "Resend",
|
|
20
|
+
required: ["apiKey", "senderEmail"]
|
|
21
|
+
},
|
|
22
|
+
awsSes: {
|
|
23
|
+
name: "AWS SES",
|
|
24
|
+
required: ["accessKeyId", "secretAccessKey", "region", "senderEmail"]
|
|
25
|
+
},
|
|
26
|
+
ntfy: {
|
|
27
|
+
name: "Ntfy",
|
|
28
|
+
required: ["authType", "authToken"]
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
export {
|
|
32
|
+
e as INTEGRATIONS_AVAILABLE
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.js","sources":["../../src/@types/settings.ts"],"sourcesContent":["export interface SmtpSettingsType {\r\n server: string;\r\n port: number;\r\n username: string;\r\n password: string;\r\n connected: boolean;\r\n senderEmail: string;\r\n}\r\n\r\nexport interface LogItem {\r\n level: number;\r\n time: number;\r\n pid: number;\r\n hostname: string;\r\n module: string;\r\n planId?: string;\r\n backupId?: string;\r\n deviceId?: string;\r\n msg: string;\r\n}\r\n\r\nexport interface NtfySettingsType {\r\n authType: string;\r\n authToken: string;\r\n connected: boolean;\r\n}\r\n\r\nexport interface IntegrationSettings {\r\n smtp?: SmtpSettingsType;\r\n ntfy?: NtfySettingsType;\r\n}\r\n\r\nexport type IntegrationTypes = 'smtp' | 'sendgrid' | 'mailgun' | 'brevo' | 'resend' | 'awsSes' | 'ntfy';\r\nexport const INTEGRATIONS_AVAILABLE: Record<IntegrationTypes, { name: string; required: string[] }> = {\r\n smtp: {\r\n name: 'SMTP',\r\n required: ['server', 'port', 'username', 'password', 'senderEmail'],\r\n },\r\n sendgrid: {\r\n name: 'SendGrid',\r\n required: ['apiKey', 'senderEmail'],\r\n },\r\n mailgun: {\r\n name: 'Mailgun',\r\n required: ['apiKey', 'domain', 'senderEmail'],\r\n },\r\n brevo: {\r\n name: 'Brevo',\r\n required: ['apiKey', 'senderEmail'],\r\n },\r\n resend: {\r\n name: 'Resend',\r\n required: ['apiKey', 'senderEmail'],\r\n },\r\n awsSes: {\r\n name: 'AWS SES',\r\n required: ['accessKeyId', 'secretAccessKey', 'region', 'senderEmail'],\r\n },\r\n ntfy: {\r\n name: 'Ntfy',\r\n required: ['authType', 'authToken'],\r\n },\r\n} as const;\r\n"],"names":["INTEGRATIONS_AVAILABLE"],"mappings":"AAiCO,MAAMA,IAAyF;AAAA,EACnG,MAAM;AAAA,IACH,MAAM;AAAA,IACN,UAAU,CAAC,UAAU,QAAQ,YAAY,YAAY,aAAa;AAAA,EAAA;AAAA,EAErE,UAAU;AAAA,IACP,MAAM;AAAA,IACN,UAAU,CAAC,UAAU,aAAa;AAAA,EAAA;AAAA,EAErC,SAAS;AAAA,IACN,MAAM;AAAA,IACN,UAAU,CAAC,UAAU,UAAU,aAAa;AAAA,EAAA;AAAA,EAE/C,OAAO;AAAA,IACJ,MAAM;AAAA,IACN,UAAU,CAAC,UAAU,aAAa;AAAA,EAAA;AAAA,EAErC,QAAQ;AAAA,IACL,MAAM;AAAA,IACN,UAAU,CAAC,UAAU,aAAa;AAAA,EAAA;AAAA,EAErC,QAAQ;AAAA,IACL,MAAM;AAAA,IACN,UAAU,CAAC,eAAe,mBAAmB,UAAU,aAAa;AAAA,EAAA;AAAA,EAEvE,MAAM;AAAA,IACH,MAAM;AAAA,IACN,UAAU,CAAC,YAAY,WAAW;AAAA,EAAA;AAExC;"}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
1
|
+
import { jsxs as c, jsx as t, Fragment as N } from "react/jsx-runtime";
|
|
2
|
+
import { useState as g, useMemo as h } from "react";
|
|
3
3
|
import l from "../../common/Icon/Icon.js";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
4
|
+
import n from "./PlanSettings.module.scss.js";
|
|
5
|
+
import y from "./PlanNotificationSettings.js";
|
|
6
6
|
import P from "./PlanPerformanceSettings.js";
|
|
7
7
|
import T from "../../common/form/TagsInput/TagsInput.js";
|
|
8
|
-
import
|
|
9
|
-
import { isMobile as
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
const
|
|
13
|
-
var v;
|
|
14
|
-
const [
|
|
8
|
+
import G from "./PlanGeneralSettings.js";
|
|
9
|
+
import { isMobile as M } from "../../../utils/helpers.js";
|
|
10
|
+
import A from "../../common/form/Select/Select.js";
|
|
11
|
+
import C from "./PlanScriptsSettings.js";
|
|
12
|
+
const E = ({ plan: i, appSettings: s, device: m, onUpdate: r }) => {
|
|
13
|
+
var v, b;
|
|
14
|
+
const [a, o] = g("General"), d = i.settings, u = h(() => {
|
|
15
15
|
const e = [];
|
|
16
|
-
return
|
|
17
|
-
|
|
16
|
+
return s != null && s.integration && Object.keys(s.integration).forEach((f) => {
|
|
17
|
+
s.integration[f] && s.integration[f].connected && e.push(f);
|
|
18
18
|
}), e;
|
|
19
|
-
}, [
|
|
20
|
-
return /* @__PURE__ */
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
}, [s]);
|
|
20
|
+
return /* @__PURE__ */ c("div", { className: `${n.advancedOptions} styled__scrollbar`, children: [
|
|
21
|
+
M() ? /* @__PURE__ */ t(
|
|
22
|
+
A,
|
|
23
23
|
{
|
|
24
|
-
customClasses:
|
|
24
|
+
customClasses: n.advancedSettingsSelect,
|
|
25
25
|
options: [
|
|
26
26
|
{ label: "General", value: "General", icon: "folders" },
|
|
27
27
|
// { label: 'Prune', value: 'Prune', icon: 'prune' },
|
|
@@ -29,60 +29,62 @@ const F = ({ plan: a, appSettings: n, device: m, onUpdate: r }) => {
|
|
|
29
29
|
{ label: "Notification", value: "Notification", icon: "notification" },
|
|
30
30
|
{ label: "Misc.", value: "Misc", icon: "settings-alt" }
|
|
31
31
|
],
|
|
32
|
-
fieldValue:
|
|
32
|
+
fieldValue: a,
|
|
33
33
|
full: !0,
|
|
34
34
|
onUpdate: (e) => o(e)
|
|
35
35
|
}
|
|
36
|
-
) : /* @__PURE__ */
|
|
37
|
-
/* @__PURE__ */
|
|
38
|
-
/* @__PURE__ */
|
|
36
|
+
) : /* @__PURE__ */ t(N, { children: /* @__PURE__ */ c("ul", { className: n.advancedTabs, children: [
|
|
37
|
+
/* @__PURE__ */ c("li", { onClick: () => o("General"), className: a === "General" ? n.advancedTabActive : "", children: [
|
|
38
|
+
/* @__PURE__ */ t(l, { size: 13, type: "folders" }),
|
|
39
39
|
" General"
|
|
40
40
|
] }),
|
|
41
|
-
/* @__PURE__ */
|
|
42
|
-
/* @__PURE__ */
|
|
41
|
+
/* @__PURE__ */ c("li", { onClick: () => o("Performance"), className: a === "Performance" ? n.advancedTabActive : "", children: [
|
|
42
|
+
/* @__PURE__ */ t(l, { size: 13, type: "performance" }),
|
|
43
43
|
" Performance"
|
|
44
44
|
] }),
|
|
45
|
-
/* @__PURE__ */
|
|
46
|
-
/* @__PURE__ */
|
|
45
|
+
/* @__PURE__ */ c("li", { onClick: () => o("Notification"), className: a === "Notification" ? n.advancedTabActive : "", children: [
|
|
46
|
+
/* @__PURE__ */ t(l, { size: 13, type: "notification" }),
|
|
47
47
|
" Notification"
|
|
48
48
|
] }),
|
|
49
|
-
/* @__PURE__ */
|
|
50
|
-
/* @__PURE__ */
|
|
49
|
+
/* @__PURE__ */ c("li", { onClick: () => o("Scripts"), className: a === "Scripts" ? n.advancedTabActive : "", children: [
|
|
50
|
+
/* @__PURE__ */ t(l, { size: 13, type: "cli" }),
|
|
51
51
|
" Scripts"
|
|
52
52
|
] }),
|
|
53
|
-
/* @__PURE__ */
|
|
54
|
-
/* @__PURE__ */
|
|
53
|
+
/* @__PURE__ */ c("li", { onClick: () => o("Misc"), className: a === "Misc" ? n.advancedTabActive : "", children: [
|
|
54
|
+
/* @__PURE__ */ t(l, { size: 14, type: "settings-alt" }),
|
|
55
55
|
" Misc."
|
|
56
56
|
] })
|
|
57
57
|
] }) }),
|
|
58
|
-
/* @__PURE__ */
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
58
|
+
/* @__PURE__ */ c("div", { className: n.advancedTabContent, children: [
|
|
59
|
+
a === "General" && /* @__PURE__ */ t(G, { settings: d, onUpdate: (e) => r({ ...i, settings: e }) }),
|
|
60
|
+
a === "Notification" && /* @__PURE__ */ t(
|
|
61
|
+
y,
|
|
62
62
|
{
|
|
63
|
-
types:
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
types: u,
|
|
64
|
+
planID: i.id,
|
|
65
|
+
isSync: i.method === "sync",
|
|
66
|
+
admin_email: s == null ? void 0 : s.admin_email,
|
|
67
|
+
notificationSettings: ((v = i.settings) == null ? void 0 : v.notification) || {},
|
|
68
|
+
onUpdate: (e) => r({ ...i, settings: { ...d, notification: e } })
|
|
67
69
|
}
|
|
68
70
|
),
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
/* @__PURE__ */
|
|
72
|
-
/* @__PURE__ */
|
|
71
|
+
a === "Performance" && /* @__PURE__ */ t(P, { plan: i, onUpdate: (e) => r({ ...i, settings: { ...d, performance: e } }) }),
|
|
72
|
+
a === "Misc" && /* @__PURE__ */ c("div", { className: n.field, children: [
|
|
73
|
+
/* @__PURE__ */ t("label", { className: n.label, children: "Tags" }),
|
|
74
|
+
/* @__PURE__ */ t(T, { fieldValue: i.tags || [], onUpdate: (e) => r({ ...i, tags: e }) })
|
|
73
75
|
] }),
|
|
74
|
-
|
|
75
|
-
|
|
76
|
+
a === "Scripts" && /* @__PURE__ */ t(
|
|
77
|
+
C,
|
|
76
78
|
{
|
|
77
|
-
settings: ((
|
|
79
|
+
settings: ((b = i.settings) == null ? void 0 : b.scripts) || {},
|
|
78
80
|
platform: (m == null ? void 0 : m.platform) || void 0,
|
|
79
|
-
onUpdate: (e) => r({ ...
|
|
81
|
+
onUpdate: (e) => r({ ...i, settings: { ...i.settings, scripts: e } })
|
|
80
82
|
}
|
|
81
83
|
)
|
|
82
84
|
] })
|
|
83
85
|
] });
|
|
84
86
|
};
|
|
85
87
|
export {
|
|
86
|
-
|
|
88
|
+
E as default
|
|
87
89
|
};
|
|
88
90
|
//# sourceMappingURL=PlanAdvancedSettings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanAdvancedSettings.js","sources":["../../../../src/components/Plan/PlanSettings/PlanAdvancedSettings.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\r\nimport Icon from '../../common/Icon/Icon';\r\nimport classes from './PlanSettings.module.scss';\r\nimport PlanNotificationSettings from './PlanNotificationSettings';\r\nimport PlanPerformanceSettings from './PlanPerformanceSettings';\r\nimport { NewPlanSettings } from '../../../@types/plans';\r\nimport TagsInput from '../../common/form/TagsInput/TagsInput';\r\nimport PlanGeneralSettings from './PlanGeneralSettings';\r\nimport { isMobile } from '../../../utils/helpers';\r\nimport Select from '../../common/form/Select/Select';\r\nimport PlanScriptsSettings from './PlanScriptsSettings';\r\nimport { Device } from '../../../@types/devices';\r\n\r\ninterface PlanAdvancedSettingsProps {\r\n plan: NewPlanSettings;\r\n appSettings?: Record<string, any>;\r\n device: Device;\r\n onUpdate: (notificationSettings: NewPlanSettings) => void;\r\n}\r\n\r\nconst PlanAdvancedSettings = ({ plan, appSettings, device, onUpdate }: PlanAdvancedSettingsProps) => {\r\n const [advancedTab, setAdvancedTab] = useState('General');\r\n const settings = plan.settings;\r\n const integrationTypes = useMemo(() => {\r\n const types: string[] = [];\r\n if (appSettings?.integration) {\r\n Object.keys(appSettings.integration).forEach((k) => {\r\n if (appSettings.integration[k] && appSettings.integration[k].connected) {\r\n types.push(k);\r\n }\r\n });\r\n }\r\n return types;\r\n }, [appSettings]);\r\n\r\n return (\r\n <div className={`${classes.advancedOptions} styled__scrollbar`}>\r\n {isMobile() ? (\r\n <Select\r\n customClasses={classes.advancedSettingsSelect}\r\n options={[\r\n { label: 'General', value: 'General', icon: 'folders' },\r\n // { label: 'Prune', value: 'Prune', icon: 'prune' },\r\n { label: 'Performance', value: 'Performance', icon: 'performance' },\r\n { label: 'Notification', value: 'Notification', icon: 'notification' },\r\n { label: 'Misc.', value: 'Misc', icon: 'settings-alt' },\r\n ]}\r\n fieldValue={advancedTab}\r\n full={true}\r\n onUpdate={(val) => setAdvancedTab(val)}\r\n />\r\n ) : (\r\n <>\r\n <ul className={classes.advancedTabs}>\r\n <li onClick={() => setAdvancedTab('General')} className={advancedTab === 'General' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"folders\" /> General\r\n </li>\r\n {/* <li onClick={() => setAdvancedTab('Prune')} className={advancedTab === 'Prune' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"prune\" /> Prune\r\n </li> */}\r\n <li onClick={() => setAdvancedTab('Performance')} className={advancedTab === 'Performance' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"performance\" /> Performance\r\n </li>\r\n <li onClick={() => setAdvancedTab('Notification')} className={advancedTab === 'Notification' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"notification\" /> Notification\r\n </li>\r\n <li onClick={() => setAdvancedTab('Scripts')} className={advancedTab === 'Scripts' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"cli\" /> Scripts\r\n </li>\r\n <li onClick={() => setAdvancedTab('Misc')} className={advancedTab === 'Misc' ? classes.advancedTabActive : ''}>\r\n <Icon size={14} type=\"settings-alt\" /> Misc.\r\n </li>\r\n </ul>\r\n </>\r\n )}\r\n <div className={classes.advancedTabContent}>\r\n {advancedTab === 'General' && (\r\n <PlanGeneralSettings settings={settings} onUpdate={(newSettings) => onUpdate({ ...plan, settings: newSettings })} />\r\n )}\r\n {advancedTab === 'Notification' && (\r\n <PlanNotificationSettings\r\n types={integrationTypes}\r\n plan={plan}\r\n admin_email={appSettings?.admin_email}\r\n
|
|
1
|
+
{"version":3,"file":"PlanAdvancedSettings.js","sources":["../../../../src/components/Plan/PlanSettings/PlanAdvancedSettings.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\r\nimport Icon from '../../common/Icon/Icon';\r\nimport classes from './PlanSettings.module.scss';\r\nimport PlanNotificationSettings from './PlanNotificationSettings';\r\nimport PlanPerformanceSettings from './PlanPerformanceSettings';\r\nimport { NewPlanSettings } from '../../../@types/plans';\r\nimport TagsInput from '../../common/form/TagsInput/TagsInput';\r\nimport PlanGeneralSettings from './PlanGeneralSettings';\r\nimport { isMobile } from '../../../utils/helpers';\r\nimport Select from '../../common/form/Select/Select';\r\nimport PlanScriptsSettings from './PlanScriptsSettings';\r\nimport { Device } from '../../../@types/devices';\r\n\r\ninterface PlanAdvancedSettingsProps {\r\n plan: NewPlanSettings;\r\n appSettings?: Record<string, any>;\r\n device: Device;\r\n onUpdate: (notificationSettings: NewPlanSettings) => void;\r\n}\r\n\r\nconst PlanAdvancedSettings = ({ plan, appSettings, device, onUpdate }: PlanAdvancedSettingsProps) => {\r\n const [advancedTab, setAdvancedTab] = useState('General');\r\n const settings = plan.settings;\r\n const integrationTypes = useMemo(() => {\r\n const types: string[] = [];\r\n if (appSettings?.integration) {\r\n Object.keys(appSettings.integration).forEach((k) => {\r\n if (appSettings.integration[k] && appSettings.integration[k].connected) {\r\n types.push(k);\r\n }\r\n });\r\n }\r\n return types;\r\n }, [appSettings]);\r\n\r\n return (\r\n <div className={`${classes.advancedOptions} styled__scrollbar`}>\r\n {isMobile() ? (\r\n <Select\r\n customClasses={classes.advancedSettingsSelect}\r\n options={[\r\n { label: 'General', value: 'General', icon: 'folders' },\r\n // { label: 'Prune', value: 'Prune', icon: 'prune' },\r\n { label: 'Performance', value: 'Performance', icon: 'performance' },\r\n { label: 'Notification', value: 'Notification', icon: 'notification' },\r\n { label: 'Misc.', value: 'Misc', icon: 'settings-alt' },\r\n ]}\r\n fieldValue={advancedTab}\r\n full={true}\r\n onUpdate={(val) => setAdvancedTab(val)}\r\n />\r\n ) : (\r\n <>\r\n <ul className={classes.advancedTabs}>\r\n <li onClick={() => setAdvancedTab('General')} className={advancedTab === 'General' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"folders\" /> General\r\n </li>\r\n {/* <li onClick={() => setAdvancedTab('Prune')} className={advancedTab === 'Prune' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"prune\" /> Prune\r\n </li> */}\r\n <li onClick={() => setAdvancedTab('Performance')} className={advancedTab === 'Performance' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"performance\" /> Performance\r\n </li>\r\n <li onClick={() => setAdvancedTab('Notification')} className={advancedTab === 'Notification' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"notification\" /> Notification\r\n </li>\r\n <li onClick={() => setAdvancedTab('Scripts')} className={advancedTab === 'Scripts' ? classes.advancedTabActive : ''}>\r\n <Icon size={13} type=\"cli\" /> Scripts\r\n </li>\r\n <li onClick={() => setAdvancedTab('Misc')} className={advancedTab === 'Misc' ? classes.advancedTabActive : ''}>\r\n <Icon size={14} type=\"settings-alt\" /> Misc.\r\n </li>\r\n </ul>\r\n </>\r\n )}\r\n <div className={classes.advancedTabContent}>\r\n {advancedTab === 'General' && (\r\n <PlanGeneralSettings settings={settings} onUpdate={(newSettings) => onUpdate({ ...plan, settings: newSettings })} />\r\n )}\r\n {advancedTab === 'Notification' && (\r\n <PlanNotificationSettings\r\n types={integrationTypes}\r\n planID={plan.id}\r\n isSync={plan.method === 'sync'}\r\n admin_email={appSettings?.admin_email}\r\n notificationSettings={plan.settings?.notification || {}}\r\n onUpdate={(notification) => onUpdate({ ...plan, settings: { ...settings, notification } })}\r\n />\r\n )}\r\n {/* {advancedTab === 'Prune' && (\r\n <PlanPruneSettings plan={plan} onUpdate={(prune) => onUpdate({ ...plan, settings: { ...settings, prune } })} />\r\n )} */}\r\n {advancedTab === 'Performance' && (\r\n <PlanPerformanceSettings plan={plan} onUpdate={(performance) => onUpdate({ ...plan, settings: { ...settings, performance } })} />\r\n )}\r\n {advancedTab === 'Misc' && (\r\n <div className={classes.field}>\r\n <label className={classes.label}>Tags</label>\r\n <TagsInput fieldValue={plan.tags || []} onUpdate={(val) => onUpdate({ ...plan, tags: val })} />\r\n </div>\r\n )}\r\n {advancedTab === 'Scripts' && (\r\n <PlanScriptsSettings\r\n settings={plan.settings?.scripts || {}}\r\n platform={device?.platform || undefined}\r\n onUpdate={(scripts: NewPlanSettings['settings']['scripts']) => onUpdate({ ...plan, settings: { ...plan.settings, scripts } })}\r\n />\r\n )}\r\n </div>\r\n </div>\r\n );\r\n};\r\n\r\nexport default PlanAdvancedSettings;\r\n"],"names":["PlanAdvancedSettings","plan","appSettings","device","onUpdate","advancedTab","setAdvancedTab","useState","settings","integrationTypes","useMemo","types","k","classes","isMobile","jsx","Select","val","Fragment","jsxs","Icon","PlanGeneralSettings","newSettings","PlanNotificationSettings","_a","notification","PlanPerformanceSettings","performance","TagsInput","PlanScriptsSettings","_b","scripts"],"mappings":";;;;;;;;;;;AAoBA,MAAMA,IAAuB,CAAC,EAAE,MAAAC,GAAM,aAAAC,GAAa,QAAAC,GAAQ,UAAAC,QAA0C;;AAClG,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAS,SAAS,GAClDC,IAAWP,EAAK,UAChBQ,IAAmBC,EAAQ,MAAM;AACpC,UAAMC,IAAkB,CAAA;AACxB,WAAIT,KAAA,QAAAA,EAAa,eACd,OAAO,KAAKA,EAAY,WAAW,EAAE,QAAQ,CAACU,MAAM;AACjD,MAAIV,EAAY,YAAYU,CAAC,KAAKV,EAAY,YAAYU,CAAC,EAAE,aAC1DD,EAAM,KAAKC,CAAC;AAAA,IAElB,CAAC,GAEGD;AAAA,EACV,GAAG,CAACT,CAAW,CAAC;AAEhB,2BACI,OAAA,EAAI,WAAW,GAAGW,EAAQ,eAAe,sBACtC,UAAA;AAAA,IAAAC,EAAA,IACE,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACE,eAAeH,EAAQ;AAAA,QACvB,SAAS;AAAA,UACN,EAAE,OAAO,WAAW,OAAO,WAAW,MAAM,UAAA;AAAA;AAAA,UAE5C,EAAE,OAAO,eAAe,OAAO,eAAe,MAAM,cAAA;AAAA,UACpD,EAAE,OAAO,gBAAgB,OAAO,gBAAgB,MAAM,eAAA;AAAA,UACtD,EAAE,OAAO,SAAS,OAAO,QAAQ,MAAM,eAAA;AAAA,QAAe;AAAA,QAEzD,YAAYR;AAAA,QACZ,MAAM;AAAA,QACN,UAAU,CAACY,MAAQX,EAAeW,CAAG;AAAA,MAAA;AAAA,IAAA,IAGxC,gBAAAF,EAAAG,GAAA,EACG,UAAA,gBAAAC,EAAC,MAAA,EAAG,WAAWN,EAAQ,cACpB,UAAA;AAAA,MAAA,gBAAAM,EAAC,MAAA,EAAG,SAAS,MAAMb,EAAe,SAAS,GAAG,WAAWD,MAAgB,YAAYQ,EAAQ,oBAAoB,IAC9G,UAAA;AAAA,QAAA,gBAAAE,EAACK,GAAA,EAAK,MAAM,IAAI,MAAK,WAAU;AAAA,QAAE;AAAA,MAAA,GACpC;AAAA,MAIA,gBAAAD,EAAC,MAAA,EAAG,SAAS,MAAMb,EAAe,aAAa,GAAG,WAAWD,MAAgB,gBAAgBQ,EAAQ,oBAAoB,IACtH,UAAA;AAAA,QAAA,gBAAAE,EAACK,GAAA,EAAK,MAAM,IAAI,MAAK,eAAc;AAAA,QAAE;AAAA,MAAA,GACxC;AAAA,MACA,gBAAAD,EAAC,MAAA,EAAG,SAAS,MAAMb,EAAe,cAAc,GAAG,WAAWD,MAAgB,iBAAiBQ,EAAQ,oBAAoB,IACxH,UAAA;AAAA,QAAA,gBAAAE,EAACK,GAAA,EAAK,MAAM,IAAI,MAAK,gBAAe;AAAA,QAAE;AAAA,MAAA,GACzC;AAAA,MACA,gBAAAD,EAAC,MAAA,EAAG,SAAS,MAAMb,EAAe,SAAS,GAAG,WAAWD,MAAgB,YAAYQ,EAAQ,oBAAoB,IAC9G,UAAA;AAAA,QAAA,gBAAAE,EAACK,GAAA,EAAK,MAAM,IAAI,MAAK,OAAM;AAAA,QAAE;AAAA,MAAA,GAChC;AAAA,MACA,gBAAAD,EAAC,MAAA,EAAG,SAAS,MAAMb,EAAe,MAAM,GAAG,WAAWD,MAAgB,SAASQ,EAAQ,oBAAoB,IACxG,UAAA;AAAA,QAAA,gBAAAE,EAACK,GAAA,EAAK,MAAM,IAAI,MAAK,gBAAe;AAAA,QAAE;AAAA,MAAA,EAAA,CACzC;AAAA,IAAA,EAAA,CACH,EAAA,CACH;AAAA,IAEH,gBAAAD,EAAC,OAAA,EAAI,WAAWN,EAAQ,oBACpB,UAAA;AAAA,MAAAR,MAAgB,aACd,gBAAAU,EAACM,GAAA,EAAoB,UAAAb,GAAoB,UAAU,CAACc,MAAgBlB,EAAS,EAAE,GAAGH,GAAM,UAAUqB,EAAA,CAAa,EAAA,CAAG;AAAA,MAEpHjB,MAAgB,kBACd,gBAAAU;AAAA,QAACQ;AAAA,QAAA;AAAA,UACE,OAAOd;AAAA,UACP,QAAQR,EAAK;AAAA,UACb,QAAQA,EAAK,WAAW;AAAA,UACxB,aAAaC,KAAA,gBAAAA,EAAa;AAAA,UAC1B,wBAAsBsB,IAAAvB,EAAK,aAAL,gBAAAuB,EAAe,iBAAgB,CAAA;AAAA,UACrD,UAAU,CAACC,MAAiBrB,EAAS,EAAE,GAAGH,GAAM,UAAU,EAAE,GAAGO,GAAU,cAAAiB,KAAgB;AAAA,QAAA;AAAA,MAAA;AAAA,MAM9FpB,MAAgB,iBACd,gBAAAU,EAACW,KAAwB,MAAAzB,GAAY,UAAU,CAAC0B,MAAgBvB,EAAS,EAAE,GAAGH,GAAM,UAAU,EAAE,GAAGO,GAAU,aAAAmB,EAAA,EAAY,CAAG,GAAG;AAAA,MAEjItB,MAAgB,UACd,gBAAAc,EAAC,OAAA,EAAI,WAAWN,EAAQ,OACrB,UAAA;AAAA,QAAA,gBAAAE,EAAC,SAAA,EAAM,WAAWF,EAAQ,OAAO,UAAA,QAAI;AAAA,0BACpCe,GAAA,EAAU,YAAY3B,EAAK,QAAQ,CAAA,GAAI,UAAU,CAACgB,MAAQb,EAAS,EAAE,GAAGH,GAAM,MAAMgB,EAAA,CAAK,EAAA,CAAG;AAAA,MAAA,GAChG;AAAA,MAEFZ,MAAgB,aACd,gBAAAU;AAAA,QAACc;AAAA,QAAA;AAAA,UACE,YAAUC,IAAA7B,EAAK,aAAL,gBAAA6B,EAAe,YAAW,CAAA;AAAA,UACpC,WAAU3B,KAAA,gBAAAA,EAAQ,aAAY;AAAA,UAC9B,UAAU,CAAC4B,MAAoD3B,EAAS,EAAE,GAAGH,GAAM,UAAU,EAAE,GAAGA,EAAK,UAAU,SAAA8B,EAAA,GAAW;AAAA,QAAA;AAAA,MAAA;AAAA,IAC/H,EAAA,CAEN;AAAA,EAAA,GACH;AAEN;"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PlanNotification } from '../../../@types/plans';
|
|
2
2
|
interface PlanNotificationSettingsProps {
|
|
3
|
-
plan: NewPlanSettings;
|
|
4
3
|
types: string[];
|
|
4
|
+
isSync: boolean;
|
|
5
|
+
notificationType?: 'backup' | 'integrity';
|
|
5
6
|
admin_email?: string;
|
|
6
|
-
|
|
7
|
+
planID?: string;
|
|
8
|
+
notificationSettings: PlanNotification;
|
|
9
|
+
onUpdate: (notificationSettings: PlanNotification) => void;
|
|
7
10
|
}
|
|
8
|
-
declare const PlanNotificationSettings: ({
|
|
11
|
+
declare const PlanNotificationSettings: ({ planID, isSync, types, admin_email, notificationSettings, notificationType, onUpdate, }: PlanNotificationSettingsProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
12
|
export default PlanNotificationSettings;
|
|
10
13
|
//# sourceMappingURL=PlanNotificationSettings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanNotificationSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/Plan/PlanSettings/PlanNotificationSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"PlanNotificationSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/Plan/PlanSettings/PlanNotificationSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAwB,MAAM,uBAAuB,CAAC;AAK/E,UAAU,6BAA6B;IACpC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,gBAAgB,CAAC;IACvC,QAAQ,EAAE,CAAC,oBAAoB,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC7D;AAED,QAAA,MAAM,wBAAwB,GAAI,2FAQ/B,6BAA6B,4CAqP/B,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
|