@pipelab/shared 1.0.0-beta.3 → 1.0.0-beta.30
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/.oxfmtrc.json +1 -1
- package/CHANGELOG.md +234 -0
- package/dist/index.cjs +44534 -0
- package/dist/index.d.cts +4664 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +1514 -499
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1098 -436
- package/dist/index.mjs.map +1 -1
- package/package.json +8 -4
- package/src/apis.ts +126 -31
- package/src/build-history.ts +3 -23
- package/src/config/connections-definition.ts +3 -0
- package/src/config/migrators.ts +176 -25
- package/src/config/projects-definition.ts +8 -1
- package/src/config/projects-types.ts +1 -25
- package/src/config.schema.ts +29 -5
- package/src/evaluator.ts +0 -1
- package/src/graph.ts +2 -70
- package/src/i18n/de_DE.json +138 -51
- package/src/i18n/en_US.json +67 -52
- package/src/i18n/es_ES.json +139 -52
- package/src/i18n/fr_FR.json +128 -44
- package/src/i18n/pt_BR.json +136 -49
- package/src/i18n/zh_CN.json +142 -55
- package/src/index.ts +21 -1
- package/src/ipc.types.ts +2 -0
- package/src/model.test.ts +306 -1
- package/src/model.ts +54 -43
- package/src/plugins/definitions.ts +26 -55
- package/src/plugins-list.ts +17 -0
- package/src/plugins.ts +10 -1
- package/src/utils.ts +26 -0
- package/tsconfig.json +2 -4
- package/tsconfig.test.json +8 -0
- package/tsdown.config.ts +12 -0
package/src/graph.ts
CHANGED
|
@@ -42,7 +42,7 @@ export const processGraph = async (options: {
|
|
|
42
42
|
node: Block,
|
|
43
43
|
params: Record<string, string>,
|
|
44
44
|
steps: Steps,
|
|
45
|
-
) => Promise<End<"
|
|
45
|
+
) => Promise<End<"action:execute">>;
|
|
46
46
|
onNodeEnter: (node: Block) => void;
|
|
47
47
|
onNodeExit: (node: Block) => void;
|
|
48
48
|
abortSignal?: AbortSignal;
|
|
@@ -68,47 +68,7 @@ export const processGraph = async (options: {
|
|
|
68
68
|
options.definitions,
|
|
69
69
|
);
|
|
70
70
|
|
|
71
|
-
|
|
72
|
-
options.onNodeEnter(rawNode)
|
|
73
|
-
|
|
74
|
-
const newParams = await makeResolvedParams({
|
|
75
|
-
params: rawNode.params,
|
|
76
|
-
variables: options.variables,
|
|
77
|
-
steps: options.steps,
|
|
78
|
-
context: options.context
|
|
79
|
-
})
|
|
80
|
-
|
|
81
|
-
const result = await options.onExecuteItem(node, newParams, options.steps) as End<'condition:execute'>
|
|
82
|
-
|
|
83
|
-
if ('result' in result) {
|
|
84
|
-
logger().error(result.result)
|
|
85
|
-
options.onNodeExit(rawNode)
|
|
86
|
-
throw new Error('Condition error')
|
|
87
|
-
} else {
|
|
88
|
-
const { value, outputs } = result
|
|
89
|
-
if (!options.steps[rawNode.uid]) {
|
|
90
|
-
options.steps[rawNode.uid] = {
|
|
91
|
-
outputs: {}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
options.steps[rawNode.uid].outputs = outputs
|
|
95
|
-
|
|
96
|
-
if (value === true) {
|
|
97
|
-
await processGraph({
|
|
98
|
-
graph: rawNode.branchTrue,
|
|
99
|
-
...options,
|
|
100
|
-
abortSignal: options.abortSignal
|
|
101
|
-
})
|
|
102
|
-
} else {
|
|
103
|
-
await processGraph({
|
|
104
|
-
graph: rawNode.branchFalse,
|
|
105
|
-
...options,
|
|
106
|
-
abortSignal: options.abortSignal
|
|
107
|
-
})
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
options.onNodeExit(rawNode)
|
|
111
|
-
} else */ if (rawNode.type === "action") {
|
|
71
|
+
if (rawNode.type === "action") {
|
|
112
72
|
if (rawNode.disabled === true) {
|
|
113
73
|
console.warn(
|
|
114
74
|
`Node ${rawNode.uid} (${rawNode.origin.pluginId}::${rawNode.origin.nodeId}) is disabled`,
|
|
@@ -163,34 +123,6 @@ export const processGraph = async (options: {
|
|
|
163
123
|
options.steps[rawNode.uid].outputs = result.result.outputs;
|
|
164
124
|
}
|
|
165
125
|
options.onNodeExit(rawNode);
|
|
166
|
-
} else if (rawNode.type === "loop") {
|
|
167
|
-
options.onNodeEnter(rawNode);
|
|
168
|
-
|
|
169
|
-
// const context = {}
|
|
170
|
-
|
|
171
|
-
// const arrayToLoopOn = await evaluate(rawNode.params.value, context)
|
|
172
|
-
|
|
173
|
-
// element is the value of the element at loopindex
|
|
174
|
-
// let loopindex = 0
|
|
175
|
-
// for (const _element of arrayToLoopOn) {
|
|
176
|
-
// await processGraph(rawNode.children, definitions, variables, steps, {
|
|
177
|
-
// ...context,
|
|
178
|
-
// loopindex
|
|
179
|
-
// })
|
|
180
|
-
|
|
181
|
-
// loopindex += 1
|
|
182
|
-
// }
|
|
183
|
-
|
|
184
|
-
// continue after loop
|
|
185
|
-
|
|
186
|
-
// TODO: process loop
|
|
187
|
-
// const result = await api.execute('node:execute', {
|
|
188
|
-
// nodeId: rawNode.origin.nodeId,
|
|
189
|
-
// pluginId: rawNode.origin.pluginId,
|
|
190
|
-
// params: rawNode.params
|
|
191
|
-
// })
|
|
192
|
-
// console.log('result', result)
|
|
193
|
-
options.onNodeExit(rawNode);
|
|
194
126
|
} else if (rawNode.type === "comment") {
|
|
195
127
|
// pass
|
|
196
128
|
} else if (rawNode.type === "event") {
|
package/src/i18n/de_DE.json
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"settings": {
|
|
3
|
-
"darkTheme": "
|
|
4
|
-
"
|
|
3
|
+
"darkTheme": "Dunkles Design",
|
|
4
|
+
"autosave": "Automatisch speichern",
|
|
5
|
+
"autosaveDescription": "Änderungen an Ihren Pipelines automatisch in Echtzeit speichern.",
|
|
6
|
+
"language": "Sprache",
|
|
5
7
|
"languageOptions": {
|
|
6
8
|
"en-US": "English",
|
|
7
9
|
"fr-FR": "French",
|
|
@@ -11,33 +13,44 @@
|
|
|
11
13
|
"de-DE": "German"
|
|
12
14
|
},
|
|
13
15
|
"tabs": {
|
|
14
|
-
"general": "
|
|
15
|
-
"storage": "
|
|
16
|
-
"integrations": "
|
|
17
|
-
"advanced": "
|
|
18
|
-
"billing": "
|
|
16
|
+
"general": "Allgemein",
|
|
17
|
+
"storage": "Speicher",
|
|
18
|
+
"integrations": "Integrationen",
|
|
19
|
+
"advanced": "Erweitert",
|
|
20
|
+
"billing": "Abrechnung",
|
|
21
|
+
"plugins": "Erweiterungen",
|
|
22
|
+
"core-plugins": "Kern-Erweiterungen",
|
|
23
|
+
"community-plugins": "Community-Erweiterungen",
|
|
24
|
+
"versions": "Versionen"
|
|
19
25
|
},
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"cache-
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
26
|
+
"pipeline-cache-folder": "Pipeline-Cache-Ordner:",
|
|
27
|
+
"enter-or-browse-for-a-folder": "Ordner eingeben oder auswählen",
|
|
28
|
+
"browse": "Durchsuchen",
|
|
29
|
+
"manage-where-the-app-stores-temporary-and-cache-files": "Konfigurieren Sie lokale Ordner für temporäre Dateien und Anwendungs-Cache.",
|
|
30
|
+
"clear-cache": "Cache leeren",
|
|
31
|
+
"reset-to-default": "Auf Standard zurücksetzen",
|
|
32
|
+
"manage-subscription": "Abonnement verwalten",
|
|
33
|
+
"renewal-date": "Verlängerungsdatum",
|
|
34
|
+
"start-date": "Startdatum:",
|
|
35
|
+
"cache-cleared-successfully": "Cache erfolgreich geleert",
|
|
36
|
+
"failed-to-clear-cache-error-message": "Cache konnte nicht geleert werden: {0}",
|
|
37
|
+
"failed-to-reset-cache-folder-error-message": "Cache-Ordner konnte nicht zurückgesetzt werden: {0}",
|
|
38
|
+
"select-cache-folder": "Cache-Ordner auswählen",
|
|
39
|
+
"restart-dashboard-tour": "Dashboard-Anleitung zurücksetzen",
|
|
40
|
+
"restart-editor-tour": "Editor-Anleitung zurücksetzen",
|
|
41
|
+
"tour-reset-success": "Anleitungen wurden zurückgesetzt. Sie werden bei Ihrem nächsten Besuch wieder angezeigt.",
|
|
42
|
+
"storage-pipelab": "Pipelab",
|
|
43
|
+
"storage-other": "Andere Apps",
|
|
44
|
+
"storage-free": "Freier Speicher",
|
|
45
|
+
"disk-usage": "Festplattennutzung",
|
|
46
|
+
"free": "Frei",
|
|
47
|
+
"other": "Sonstige"
|
|
35
48
|
},
|
|
36
49
|
"headers": {
|
|
37
50
|
"dashboard": "Dashboard",
|
|
38
|
-
"
|
|
51
|
+
"pipelines": "Pipelines",
|
|
39
52
|
"editor": "Editor",
|
|
40
|
-
"billing": "
|
|
53
|
+
"billing": "@:settings.tabs.billing",
|
|
41
54
|
"team": "Team"
|
|
42
55
|
},
|
|
43
56
|
"base": {
|
|
@@ -49,38 +62,112 @@
|
|
|
49
62
|
"delete": "Löschen",
|
|
50
63
|
"logs": "Protokolle",
|
|
51
64
|
"ok": "OK",
|
|
52
|
-
"add": "Hinzufügen"
|
|
65
|
+
"add": "Hinzufügen",
|
|
66
|
+
"search": "Suchen...",
|
|
67
|
+
"success": "Erfolg",
|
|
68
|
+
"error": "Fehler"
|
|
53
69
|
},
|
|
54
70
|
"editor": {
|
|
55
|
-
"invalid-file-content": "
|
|
56
|
-
"welcome-back": "
|
|
57
|
-
"please-log-in-to-run-a-
|
|
58
|
-
"execution-done": "
|
|
59
|
-
"your-project-has-been-executed-successfully": "
|
|
60
|
-
"execution-failed": "
|
|
61
|
-
"project-has-encountered-an-error": "
|
|
62
|
-
"project-saved": "
|
|
63
|
-
"your-project-has-be-saved-successfully": "
|
|
71
|
+
"invalid-file-content": "Ungültiger Dateiinhalt",
|
|
72
|
+
"welcome-back": "Willkommen zurück!",
|
|
73
|
+
"please-log-in-to-run-a-pipeline": "Bitte melden Sie sich an, um diese Pipeline auszuführen.",
|
|
74
|
+
"execution-done": "Ausführung erfolgreich abgeschlossen",
|
|
75
|
+
"your-project-has-been-executed-successfully": "Ihre Pipeline wurde erfolgreich ausgeführt.",
|
|
76
|
+
"execution-failed": "Ausführung fehlgeschlagen",
|
|
77
|
+
"project-has-encountered-an-error": "Die Pipeline hat einen Fehler festgestellt:",
|
|
78
|
+
"project-saved": "Pipeline gespeichert",
|
|
79
|
+
"your-project-has-be-saved-successfully": "Ihre Pipeline wurde erfolgreich gespeichert.",
|
|
80
|
+
"view-history": "Verlauf",
|
|
81
|
+
"add-plugin": "Erweiterung hinzufügen",
|
|
82
|
+
"display-advanced-nodes": "Erweiterte Blöcke anzeigen",
|
|
83
|
+
"project-settings": "Pipeline-Einstellungen",
|
|
84
|
+
"jit-loading-title": "Erweiterungen werden vorbereitet",
|
|
85
|
+
"jit-loading-subtitle": "Bitte warten Sie, während Pipelab die für diese Pipeline erforderlichen Erweiterungen herunterlädt und konfigures.",
|
|
86
|
+
"jit-loading-status": "Herunterladen und Einrichten von Erweiterungspaketen...",
|
|
87
|
+
"validation-failed": "Validierung fehlgeschlagen",
|
|
88
|
+
"validation-plugin-disabled-or-missing": "Der Block \"{nodeName}\" erfordert die Erweiterung \"{pluginId}\", die derzeit nicht installiert oder aktiviert ist.",
|
|
89
|
+
"validation-missing-param": "Bitte konfigurieren Sie das erforderliche Feld \"{paramName}\" im Block \"{nodeName}\"."
|
|
64
90
|
},
|
|
65
91
|
"home": {
|
|
66
|
-
"invalid-preset": "
|
|
67
|
-
"store-project-on-the-cloud": "
|
|
92
|
+
"invalid-preset": "Ungültige Vorlage",
|
|
93
|
+
"store-project-on-the-cloud": "Projekt in der Cloud speichern",
|
|
68
94
|
"cloud": "Cloud",
|
|
69
|
-
"store-project-locally": "
|
|
70
|
-
"local": "
|
|
71
|
-
"invalid-number-of-paths-selected": "
|
|
72
|
-
"pipelab-project": "Pipelab
|
|
73
|
-
"choose-a-new-path": "
|
|
74
|
-
"invalid-file-type": "
|
|
75
|
-
"create-project": "
|
|
76
|
-
"
|
|
77
|
-
"project
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
95
|
+
"store-project-locally": "Projekt lokal speichern",
|
|
96
|
+
"local": "Lokal",
|
|
97
|
+
"invalid-number-of-paths-selected": "Ungültige Anzahl ausgewählter Pfade",
|
|
98
|
+
"pipelab-project": "Pipelab-Projekt",
|
|
99
|
+
"choose-a-new-path": "Wählen Sie einen neuen Pfad",
|
|
100
|
+
"invalid-file-type": "Ungültiger Dateityp",
|
|
101
|
+
"create-project": "Projekt erstellen",
|
|
102
|
+
"create-pipeline": "Pipeline erstellen",
|
|
103
|
+
"duplicate-project": "Projekt duplizieren",
|
|
104
|
+
"duplicate-pipeline": "Pipeline duplizieren",
|
|
105
|
+
"project-name": "Projektname",
|
|
106
|
+
"new-project": "Neues Projekt",
|
|
107
|
+
"new-pipeline": "Neue Pipeline",
|
|
108
|
+
"open": "Öffnen",
|
|
109
|
+
"import": "Importieren",
|
|
110
|
+
"pipeline-name": "Pipelinename",
|
|
111
|
+
"your-projects": "Ihre Projekte",
|
|
112
|
+
"no-projects-yet": "Noch keine Projekte",
|
|
113
|
+
"no-pipelines-yet": "Noch keine Pipelines",
|
|
114
|
+
"delete-project": "Projekt löschen",
|
|
115
|
+
"confirm-delete-project": "Sind Sie sicher, dass Sie dieses Projekt löschen möchten? Dies kann nicht rückgängig gemacht werden.",
|
|
116
|
+
"cannot-delete-project": "Projekt kann nicht gelöscht werden",
|
|
117
|
+
"project-not-empty": "Dieses Projekt enthält Pipelines. Bitte löschen Sie diese zuerst.",
|
|
118
|
+
"transfer": "Übertragen",
|
|
119
|
+
"transfer-successful": "Übertragung erfolgreich",
|
|
120
|
+
"pipeline-transferred": "Pipeline erfolgreich übertragen",
|
|
121
|
+
"select-project": "Projekt auswählen",
|
|
122
|
+
"build-history": "Ausführungsverlauf",
|
|
123
|
+
"duplicate": "Duplizieren",
|
|
124
|
+
"rename-project": "Projekt umbenennen",
|
|
125
|
+
"new-project-name": "Neuer Projektname",
|
|
126
|
+
"premium-feature": "Dies ist eine Premium-Funktion",
|
|
127
|
+
"migrate-warning": "Dieses Dateiformat wird bald nicht mehr unterstützt. Bitte migrieren Sie es in den neuen lokalen Arbeitsbereich.",
|
|
128
|
+
"simple-pipeline": "Einfache Pipeline",
|
|
129
|
+
"advanced-pipeline": "Erweiterte Pipeline",
|
|
130
|
+
"new-simple-project": "Neues einfaches Projekt",
|
|
131
|
+
"new-advanced-project": "Neues erweitertes Projekt",
|
|
132
|
+
"store-project-internally": "Projekt lokal speichern",
|
|
133
|
+
"internal": "Intern",
|
|
134
|
+
"confirm-migration-message": "Sind Sie sicher, dass Sie diese Pipeline in den lokalen Arbeitsbereich verschieben möchten? Pipelab wird diese Pipeline intern verwalten.",
|
|
135
|
+
"migrate-pipeline": "Pipeline migrieren",
|
|
136
|
+
"migration-success": "Pipeline erfolgreich migriert",
|
|
137
|
+
"migrate-to-internal": "In Arbeitsbereich verschieben",
|
|
138
|
+
"only-internal-supported-notice": "Pipelab verwaltet jetzt alle Pipelines im Arbeitsbereich der Anwendung. Externe Dateien sind veraltet, können aber weiterhin importiert werden.",
|
|
139
|
+
"import-pipeline": "Pipeline importieren",
|
|
140
|
+
"import-from-stable": "Aus Stable importieren...",
|
|
141
|
+
"import-from-beta": "Aus Beta importieren...",
|
|
142
|
+
"import-pipeline-file": "Pipeline-Datei importieren (.pipelab)...",
|
|
143
|
+
"import-success": "Pipeline erfolgreich importiert",
|
|
144
|
+
"failed-to-read-file": "Ausgewählte Datei konnte nicht gelesen werden",
|
|
145
|
+
"export-pipeline": "Pipeline exportieren...",
|
|
146
|
+
"export-success": "Pipeline erfolgreich exportiert",
|
|
147
|
+
"export-failed": "Fehler beim Exportieren der Pipeline"
|
|
82
148
|
},
|
|
83
|
-
"
|
|
84
|
-
"
|
|
149
|
+
"pipelines": {
|
|
150
|
+
"title": "@:headers.pipelines"
|
|
151
|
+
},
|
|
152
|
+
"tour": {
|
|
153
|
+
"start-tour": "Anleitung starten",
|
|
154
|
+
"projects-list-title": "Projekt-Navigator",
|
|
155
|
+
"projects-list-description": "Diese Seitenleiste zeigt Ihre Projekte. Durch Auswahl eines Projekts werden dessen Pipelines im Hauptbereich angezeigt.",
|
|
156
|
+
"add-project-title": "Neues Projekt erstellen",
|
|
157
|
+
"add-project-description": "Projekte organisieren Ihre Pipelines nach Thema oder Kunde. Klicken Sie hier, um ein neues Projekt zu starten.",
|
|
158
|
+
"new-pipeline-title": "Pipeline erstellen",
|
|
159
|
+
"new-pipeline-description": "Bereit zur Automatisierung? Erstellen Sie eine neue Pipeline, um Aktionen und Logik hinzuzufügen.",
|
|
160
|
+
"project-actions-title": "Projektverwaltung",
|
|
161
|
+
"project-actions-description": "Verwenden Sie diese Schaltflächen, um das derzeit ausgewählte Projekt umzubenennen oder zu löschen.",
|
|
162
|
+
"editor-canvas-title": "Der visuelle Editor",
|
|
163
|
+
"editor-canvas-description": "Dies ist Ihr Arbeitsbereich. Ziehen Sie Aktionsblöcke hierher, um Ihren Automatisierungsfluss zu erstellen.",
|
|
164
|
+
"editor-save-title": "Fortschritt speichern",
|
|
165
|
+
"editor-save-description": "Schützen Sie Ihre Änderungen. Wir empfehlen, Ihre Pipeline häufig zu speichern.",
|
|
166
|
+
"editor-run-title": "Pipeline testen",
|
|
167
|
+
"editor-run-description": "Klicken Sie auf Ausführen, um Ihre Pipeline zu testen. Pipelab führt jeden Block in Echtzeit aus.",
|
|
168
|
+
"editor-logs-title": "Ausführungsprotokolle",
|
|
169
|
+
"editor-logs-description": "Das Protokollfenster zeigt die Ausführungsschritte in Echtzeit, um Sie bei der Überwachung und Fehlersuche zu unterstützen.",
|
|
170
|
+
"editor-close-title": "Editor schließen",
|
|
171
|
+
"editor-close-description": "Fertig für heute? Kehren Sie zum Dashboard zurück, um andere Projekte und Pipelines zu verwalten."
|
|
85
172
|
}
|
|
86
173
|
}
|
package/src/i18n/en_US.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"settings": {
|
|
3
3
|
"darkTheme": "Dark theme",
|
|
4
4
|
"autosave": "Autosave",
|
|
5
|
-
"autosaveDescription": "
|
|
5
|
+
"autosaveDescription": "Automatically save changes to your pipelines in real-time.",
|
|
6
6
|
"language": "Language",
|
|
7
7
|
"languageOptions": {
|
|
8
8
|
"en-US": "English",
|
|
@@ -17,12 +17,16 @@
|
|
|
17
17
|
"storage": "Storage",
|
|
18
18
|
"integrations": "Integrations",
|
|
19
19
|
"advanced": "Advanced",
|
|
20
|
-
"billing": "Billing"
|
|
20
|
+
"billing": "Billing",
|
|
21
|
+
"plugins": "Plugins",
|
|
22
|
+
"core-plugins": "Core Plugins",
|
|
23
|
+
"community-plugins": "Community Plugins",
|
|
24
|
+
"versions": "Versions"
|
|
21
25
|
},
|
|
22
26
|
"pipeline-cache-folder": "Pipeline Cache Folder:",
|
|
23
27
|
"enter-or-browse-for-a-folder": "Enter or browse for a folder",
|
|
24
28
|
"browse": "Browse",
|
|
25
|
-
"manage-where-the-app-stores-temporary-and-cache-files": "
|
|
29
|
+
"manage-where-the-app-stores-temporary-and-cache-files": "Configure local directories for temporary files and application cache.",
|
|
26
30
|
"clear-cache": "Clear cache",
|
|
27
31
|
"reset-to-default": "Reset to default",
|
|
28
32
|
"manage-subscription": "Manage Subscription",
|
|
@@ -32,16 +36,9 @@
|
|
|
32
36
|
"failed-to-clear-cache-error-message": "Failed to clear cache: {0}",
|
|
33
37
|
"failed-to-reset-cache-folder-error-message": "Failed to reset cache folder: {0}",
|
|
34
38
|
"select-cache-folder": "Select Cache Folder",
|
|
35
|
-
"restart-dashboard-tour": "
|
|
36
|
-
"restart-editor-tour": "
|
|
37
|
-
"tour-reset-success": "
|
|
38
|
-
"retentionPolicy": "Retention Policy",
|
|
39
|
-
"retentionPolicyDescription": "Manage how long your build logs and history are kept.",
|
|
40
|
-
"retentionEnabled": "Enable Retention Policy",
|
|
41
|
-
"retentionMaxEntries": "Maximum Entries",
|
|
42
|
-
"retentionMaxEntriesDescription": "Keep up to this number of entries per pipeline.",
|
|
43
|
-
"retentionMaxAge": "Maximum Age (days)",
|
|
44
|
-
"retentionMaxAgeDescription": "Keep entries for up to this many days.",
|
|
39
|
+
"restart-dashboard-tour": "Reset Dashboard Guide",
|
|
40
|
+
"restart-editor-tour": "Reset Editor Guide",
|
|
41
|
+
"tour-reset-success": "Help guides have been reset. They will reappear on your next visit.",
|
|
45
42
|
"storage-pipelab": "Pipelab",
|
|
46
43
|
"storage-other": "Other Apps",
|
|
47
44
|
"storage-free": "Free Space",
|
|
@@ -51,14 +48,11 @@
|
|
|
51
48
|
},
|
|
52
49
|
"headers": {
|
|
53
50
|
"dashboard": "Dashboard",
|
|
54
|
-
"
|
|
51
|
+
"pipelines": "Pipelines",
|
|
55
52
|
"editor": "Editor",
|
|
56
|
-
"billing": "
|
|
53
|
+
"billing": "@:settings.tabs.billing",
|
|
57
54
|
"team": "Team"
|
|
58
55
|
},
|
|
59
|
-
"navigation": {
|
|
60
|
-
"build-history": "Build History"
|
|
61
|
-
},
|
|
62
56
|
"base": {
|
|
63
57
|
"close": "Close",
|
|
64
58
|
"save": "Save",
|
|
@@ -69,44 +63,55 @@
|
|
|
69
63
|
"logs": "Logs",
|
|
70
64
|
"ok": "OK",
|
|
71
65
|
"add": "Add",
|
|
72
|
-
"search": "Search..."
|
|
66
|
+
"search": "Search...",
|
|
67
|
+
"success": "Success",
|
|
68
|
+
"error": "Error"
|
|
73
69
|
},
|
|
74
70
|
"editor": {
|
|
75
71
|
"invalid-file-content": "Invalid file content",
|
|
76
72
|
"welcome-back": "Welcome back!",
|
|
77
|
-
"please-log-in-to-run-a-
|
|
78
|
-
"execution-done": "
|
|
79
|
-
"your-project-has-been-executed-successfully": "Your
|
|
80
|
-
"execution-failed": "
|
|
81
|
-
"project-has-encountered-an-error": "
|
|
82
|
-
"project-saved": "
|
|
83
|
-
"your-project-has-be-saved-successfully": "Your
|
|
73
|
+
"please-log-in-to-run-a-pipeline": "Please sign in to run this pipeline.",
|
|
74
|
+
"execution-done": "Run completed successfully",
|
|
75
|
+
"your-project-has-been-executed-successfully": "Your pipeline ran and completed successfully.",
|
|
76
|
+
"execution-failed": "Run failed",
|
|
77
|
+
"project-has-encountered-an-error": "The pipeline encountered an error:",
|
|
78
|
+
"project-saved": "Pipeline saved",
|
|
79
|
+
"your-project-has-be-saved-successfully": "Your pipeline has been saved successfully.",
|
|
84
80
|
"view-history": "History",
|
|
85
81
|
"add-plugin": "Add plugin",
|
|
86
|
-
"display-advanced-nodes": "Display advanced nodes"
|
|
82
|
+
"display-advanced-nodes": "Display advanced nodes",
|
|
83
|
+
"project-settings": "Pipeline Settings",
|
|
84
|
+
"jit-loading-title": "Preparing Plugins",
|
|
85
|
+
"jit-loading-subtitle": "Please wait while Pipelab downloads and configures the required plugins for this pipeline.",
|
|
86
|
+
"jit-loading-status": "Downloading and setting up plugin packages...",
|
|
87
|
+
"validation-failed": "Validation Failed",
|
|
88
|
+
"validation-plugin-disabled-or-missing": "The block \"{nodeName}\" requires the \"{pluginId}\" plugin, which is not currently installed or enabled.",
|
|
89
|
+
"validation-missing-param": "Please configure the required field \"{paramName}\" in the \"{nodeName}\" block."
|
|
87
90
|
},
|
|
88
91
|
"home": {
|
|
89
92
|
"invalid-preset": "Invalid preset",
|
|
90
|
-
"store-project-on-the-cloud": "
|
|
93
|
+
"store-project-on-the-cloud": "Save project to Cloud",
|
|
91
94
|
"cloud": "Cloud",
|
|
92
|
-
"store-project-locally": "
|
|
95
|
+
"store-project-locally": "Save project locally",
|
|
93
96
|
"local": "Local",
|
|
94
97
|
"invalid-number-of-paths-selected": "Invalid number of paths selected",
|
|
95
98
|
"pipelab-project": "Pipelab Project",
|
|
96
99
|
"choose-a-new-path": "Choose a new path",
|
|
97
100
|
"invalid-file-type": "Invalid file type",
|
|
98
|
-
"create-project": "Create
|
|
99
|
-
"
|
|
101
|
+
"create-project": "Create Project",
|
|
102
|
+
"create-pipeline": "Create Pipeline",
|
|
103
|
+
"duplicate-project": "Duplicate Project",
|
|
104
|
+
"duplicate-pipeline": "Duplicate Pipeline",
|
|
100
105
|
"project-name": "Project Name",
|
|
101
106
|
"new-project": "New Project",
|
|
102
|
-
"new-pipeline": "New
|
|
107
|
+
"new-pipeline": "New Pipeline",
|
|
103
108
|
"open": "Open",
|
|
104
109
|
"import": "Import",
|
|
105
110
|
"pipeline-name": "Pipeline Name",
|
|
106
111
|
"your-projects": "Your projects",
|
|
107
112
|
"no-projects-yet": "No projects yet",
|
|
108
113
|
"no-pipelines-yet": "No pipelines yet",
|
|
109
|
-
"delete-project": "Delete
|
|
114
|
+
"delete-project": "Delete Project",
|
|
110
115
|
"confirm-delete-project": "Are you sure you want to delete this project? This action cannot be undone.",
|
|
111
116
|
"cannot-delete-project": "Cannot delete project",
|
|
112
117
|
"project-not-empty": "This project contains pipelines. Please delete them first.",
|
|
@@ -119,40 +124,50 @@
|
|
|
119
124
|
"rename-project": "Rename Project",
|
|
120
125
|
"new-project-name": "New Project Name",
|
|
121
126
|
"premium-feature": "This is a premium feature",
|
|
122
|
-
"migrate-warning": "This file
|
|
123
|
-
"simple-pipeline": "
|
|
127
|
+
"migrate-warning": "This file format will soon be deprecated. Please migrate it to the new local workspace storage.",
|
|
128
|
+
"simple-pipeline": "Basic pipeline",
|
|
124
129
|
"advanced-pipeline": "Advanced pipeline",
|
|
125
130
|
"new-simple-project": "New simple project",
|
|
126
131
|
"new-advanced-project": "New advanced project",
|
|
127
|
-
"store-project-internally": "
|
|
132
|
+
"store-project-internally": "Save project locally",
|
|
128
133
|
"internal": "Internal",
|
|
129
|
-
"confirm-migration-message": "Are you sure you want to
|
|
134
|
+
"confirm-migration-message": "Are you sure you want to move this pipeline to local workspace storage? Pipelab will manage this pipeline internally.",
|
|
130
135
|
"migrate-pipeline": "Migrate Pipeline",
|
|
131
136
|
"migration-success": "Pipeline migrated successfully",
|
|
132
|
-
"migrate-to-internal": "
|
|
137
|
+
"migrate-to-internal": "Move to Workspace",
|
|
138
|
+
"only-internal-supported-notice": "Pipelab now manages all pipelines within the application workspace. External files are deprecated, but can be imported into your workspace.",
|
|
139
|
+
"import-pipeline": "Import Pipeline",
|
|
140
|
+
"import-from-stable": "Import from Stable...",
|
|
141
|
+
"import-from-beta": "Import from Beta...",
|
|
142
|
+
"import-pipeline-file": "Import pipeline file (.pipelab)...",
|
|
143
|
+
"import-success": "Pipeline imported successfully",
|
|
144
|
+
"failed-to-read-file": "Failed to read the selected file",
|
|
145
|
+
"export-pipeline": "Export Pipeline...",
|
|
146
|
+
"export-success": "Pipeline exported successfully",
|
|
147
|
+
"export-failed": "Failed to export pipeline"
|
|
133
148
|
},
|
|
134
|
-
"
|
|
135
|
-
"
|
|
149
|
+
"pipelines": {
|
|
150
|
+
"title": "@:headers.pipelines"
|
|
136
151
|
},
|
|
137
152
|
"tour": {
|
|
138
153
|
"start-tour": "Start Tour",
|
|
139
154
|
"projects-list-title": "Project Navigator",
|
|
140
|
-
"projects-list-description": "This sidebar
|
|
155
|
+
"projects-list-description": "This sidebar lists your projects. Selecting a project will show its pipelines in the main area.",
|
|
141
156
|
"add-project-title": "Create New Project",
|
|
142
|
-
"add-project-description": "Projects
|
|
143
|
-
"new-pipeline-title": "
|
|
144
|
-
"new-pipeline-description": "Ready to automate? Create a new pipeline to start adding
|
|
157
|
+
"add-project-description": "Projects organize your pipelines by topic or client. Click here to start a new project.",
|
|
158
|
+
"new-pipeline-title": "Create a Pipeline",
|
|
159
|
+
"new-pipeline-description": "Ready to automate? Create a new pipeline to start adding actions and logic.",
|
|
145
160
|
"project-actions-title": "Project Management",
|
|
146
161
|
"project-actions-description": "Use these buttons to rename or delete the currently selected project.",
|
|
147
162
|
"editor-canvas-title": "The Visual Canvas",
|
|
148
|
-
"editor-canvas-description": "This is your
|
|
163
|
+
"editor-canvas-description": "This is your canvas. Drag and drop action blocks here to build your automation flow.",
|
|
149
164
|
"editor-save-title": "Save Progress",
|
|
150
|
-
"editor-save-description": "Keep your changes safe. We recommend saving
|
|
151
|
-
"editor-run-title": "Test
|
|
152
|
-
"editor-run-description": "Click Run to
|
|
153
|
-
"editor-logs-title": "
|
|
154
|
-
"editor-logs-description": "The
|
|
155
|
-
"editor-close-title": "
|
|
156
|
-
"editor-close-description": "Done for now? Return to the dashboard to manage other projects
|
|
165
|
+
"editor-save-description": "Keep your changes safe. We recommend saving your pipeline frequently.",
|
|
166
|
+
"editor-run-title": "Test Pipeline",
|
|
167
|
+
"editor-run-description": "Click Run to test your pipeline. Pipelab will execute each block in real-time.",
|
|
168
|
+
"editor-logs-title": "Run Logs",
|
|
169
|
+
"editor-logs-description": "The log panel shows real-time execution steps, helping you monitor and debug.",
|
|
170
|
+
"editor-close-title": "Close Editor",
|
|
171
|
+
"editor-close-description": "Done for now? Return to the dashboard to manage other projects and pipelines."
|
|
157
172
|
}
|
|
158
173
|
}
|