Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit e2b27f4

Browse files
author
FalkWolsky
committed
Hubspot DataSource preparations and first backend translation
1 parent 6e13803 commit e2b27f4

File tree

13 files changed

+176932
-0
lines changed

13 files changed

+176932
-0
lines changed
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
## Allgemein
2+
INTERNAL_SERVER_ERROR=Oops! Der Dienst ist ausgelastet, bitte versuchen Sie es später erneut.
3+
NOT_AUTHORIZED=Entschuldigung, es scheint, dass Sie keine Berechtigung haben.
4+
INVALID_PARAMETER=Ungültiger Parameter gefunden: {0}, bitte überprüfen und erneut versuchen.
5+
INFRA_REDIS_TIMEOUT=Verbindungszeitüberschreitung, bitte versuchen Sie es später erneut.
6+
INFRA_MONGODB_TIMEOUT=Verbindungszeitüberschreitung, bitte versuchen Sie es später erneut.
7+
INVALID_PERMISSION_OPERATION=Ungültige Berechtigung für Ressource: {0}
8+
REQUEST_THROTTLED=Entschuldigung, die Anfrage erfolgt zu häufig, bitte versuchen Sie es später erneut.
9+
SERVER_NOT_READY=Entschuldigung, der Server ist noch nicht bereit.
10+
INVALID_ORG_ID=Ungültige Workspace-ID, sie könnte gelöscht worden sein oder existiert nicht.
11+
SWITCH_CURRENT_ORG_ERROR=Entschuldigung, Wechsel des Workspaces fehlgeschlagen, bitte versuchen Sie es später erneut.
12+
LAST_ADMIN_CANNOT_LEAVE_ORG=Entschuldigung, der letzte Administrator des Workspaces kann nicht verlassen.
13+
INVALID_GROUP_ID=Ungültige Gruppen-ID, bitte überprüfen und erneut versuchen.
14+
CANNOT_REMOVE_MYSELF=Entschuldigung, Gruppenadministratoren können sich nicht selbst löschen.
15+
CANNOT_LEAVE_GROUP=Entschuldigung, eine Gruppe muss mindestens einen Administrator enthalten.
16+
CANNOT_DELETE_SYSTEM_GROUP=Systemgruppen können nicht gelöscht werden.
17+
NEED_DEV_TO_CREATE_RESOURCE=Ungültige Aktion, Workspace-Entwickler oder Administrator erforderlich.
18+
UNABLE_TO_FIND_VALID_ORG=Kein gültiger Workspace für den aktuellen Benutzer gefunden.
19+
USER_BANNED=Dieses Konto ist gesperrt.
20+
SENDING_EMAIL_FAILED=E-Mail konnte nicht gesendet werden. Bitte überprüfen Sie die SMTP-Einstellungen für den Workspace.
21+
TOKEN_EXPIRED=Das Token zum Zurücksetzen des Passworts ist abgelaufen.
22+
INVALID_TOKEN=Ungültiges Token für die Anfrage zum Zurücksetzen des Passworts erhalten.
23+
24+
# Einladung
25+
INVALID_INVITATION_CODE=Einladungscode nicht gefunden.
26+
ALREADY_IN_ORGANIZATION=Sie sind bereits in diesem Workspace.
27+
INVITED_ORG_DELETED=Oops! Der eingeladene Workspace wurde bereits gelöscht.
28+
APPLICATION_NOT_FOUND=Anwendung {0} konnte nicht gefunden werden.
29+
ILLEGAL_APPLICATION_PERMISSION_ID=Entschuldigung, es scheint, dass Sie keine Berechtigung haben.
30+
FETCH_HISTORY_SNAPSHOT_FAILURE=Fehler beim Abrufen des Anwendungsverlaufs, bitte versuchen Sie es später erneut.
31+
FETCH_HISTORY_SNAPSHOT_COUNT_FAILURE=Fehler beim Abrufen der Anzahl der Anwendungsverlaufsschnappschüsse, bitte versuchen Sie es später erneut.
32+
INVALID_HISTORY_SNAPSHOT=Verlaufsschnappschuss {0} konnte nicht gefunden werden.
33+
34+
## Datenquelle
35+
DATASOURCE_NOT_FOUND=Datenquelle {0} konnte nicht gefunden werden.
36+
INVALID_DATASOURCE_CONFIGURATION=Ungültige Datenquellenkonfiguration: {0}, bitte erneut überprüfen.
37+
DATASOURCE_DELETE_FAIL_DUE_TO_REMAINING_QUERIES=Löschen der Datenquelle fehlgeschlagen, da sie noch in Abfragen verwendet wird.
38+
PLUGIN_CREATE_CONNECTION_FAILED=Entschuldigung, Verbindung zur Datenquelle fehlgeschlagen, Fehlermeldung: {0}.
39+
DATASOURCE_PLUGIN_ID_NOT_GIVEN=Ungültige Daten, Typ der Datenquelle fehlt.
40+
INVALID_DATASOURCE_CONFIG_TYPE=Entschuldigung, der Typ der Datenquellenkonfiguration ist ungültig: {0}, bitte erneut überprüfen.
41+
DATASOURCE_CONNECTION_TYPE_ERROR=Ungültiger Datenquellenverbindungstyp: {0}, bitte kontaktieren Sie den Systemadministrator.
42+
DATASOURCE_TYPE_ERROR=Ungültiger Datenquellentyp: {0}, bitte kontaktieren Sie den Systemadministrator.
43+
DUPLICATE_DATABASE_NAME=Oops, dieser Datenquellenname wird bereits verwendet, bitte wählen Sie einen neuen Namen.
44+
DATASOURCE_CLOSE_FAILED=Fehler beim Schließen der Datenquellenverbindung: {0}.
45+
DATASOURCE_AND_APP_ORG_NOT_MATCH=Ungültige Anfrage, die Datenquelle gehört nicht zum Anwendungs-Workspace.
46+
USER_NOT_SIGNED_IN=Unbekannter Benutzer, bitte zuerst anmelden.
47+
48+
# Authentifizierung
49+
FAIL_TO_GET_OIDC_INFO=Fehler beim Abrufen der OIDC-Informationen, Fehlermeldung: {0}.
50+
LOG_IN_SOURCE_NOT_SUPPORTED=Entschuldigung, dieser Anmeldekanal wird nicht unterstützt.
51+
USER_LOGIN_ID_EXIST=Die aktuelle E-Mail wird bereits von einem anderen Benutzer verwendet.
52+
INVALID_PASSWORD=Entschuldigung, die Passwörter stimmen nicht überein.
53+
PASSWORD_NOT_SET_YET=Dieser Benutzer hat noch kein Passwort festgelegt und kann es daher nicht zurücksetzen.
54+
INVALID_EMAIL_OR_PASSWORD=Ungültige E-Mail oder ungültiges Passwort.
55+
ALREADY_BIND=Entschuldigung, {0} wurde bereits von Benutzer {1} gebunden.
56+
NEED_BIND_THIRD_PARTY_CONNECTION=Entschuldigung, es muss ein Drittanbieter-Anmeldekanal mit dem aktuellen Workspace verbunden werden.
57+
PAYLOAD_TOO_LARGE=Entschuldigung, die maximale Dateigröße beträgt {0} KB, Ihre Datei überschreitet das Limit.
58+
59+
# Ereignisse
60+
EVENT_TYPE_USER_LOGIN=Anmeldung
61+
EVENT_TYPE_USER_LOGOUT=Abmeldung
62+
EVENT_TYPE_VIEW=App anzeigen
63+
EVENT_TYPE_APPLICATION_CREATE=Neue App erstellen
64+
EVENT_TYPE_APPLICATION_DELETE=App löschen
65+
EVENT_TYPE_APPLICATION_UPDATE=App aktualisieren
66+
EVENT_TYPE_APPLICATION_MOVE=In Ordner verschieben
67+
EVENT_TYPE_APPLICATION_RECYCLED=In Papierkorb verschieben
68+
EVENT_TYPE_APPLICATION_RESTORE=App wiederherstellen
69+
EVENT_TYPE_FOLDER_CREATE=Neuen Ordner erstellen
70+
EVENT_TYPE_FOLDER_DELETE=Ordner löschen
71+
EVENT_TYPE_FOLDER_UPDATE=Ordner aktualisieren
72+
EVENT_TYPE_QUERY_EXECUTION=Abfrage ausführen
73+
EVENT_TYPE_GROUP_CREATE=Neue Gruppe erstellen
74+
EVENT_TYPE_GROUP_UPDATE=Gruppe aktualisieren
75+
EVENT_TYPE_GROUP_DELETE=Gruppe löschen
76+
EVENT_TYPE_GROUP_MEMBER_ADD=Gruppenmitglied hinzufügen
77+
EVENT_TYPE_GROUP_MEMBER_ROLE_UPDATE=Rolle des Gruppenmitglieds aktualisieren
78+
EVENT_TYPE_GROUP_MEMBER_LEAVE=Gruppe verlassen
79+
EVENT_TYPE_GROUP_MEMBER_REMOVE=Gruppenmitglied entfernen
80+
EVENT_TYPE_SERVER_START_UP=Serverstart
81+
82+
# Limitierungen
83+
EXCEED_MAX_USER_ORG_COUNT=Entschuldigung, Sie haben die maximale Anzahl an Workspaces erreicht.
84+
EXCEED_MAX_ORG_MEMBER_COUNT=Entschuldigung, dieser Workspace hat die maximale Anzahl an Mitgliedern erreicht.
85+
EXCEED_MAX_GROUP_COUNT=Entschuldigung, dieser Workspace hat die maximale Anzahl an Gruppen erreicht.
86+
EXCEED_MAX_APP_COUNT=Entschuldigung, Sie haben die maximale Anzahl an Anwendungen im aktuellen Workspace erreicht.
87+
EXCEED_MAX_DEVELOPER_COUNT=Entschuldigung, Sie haben die maximale Anzahl an Entwicklern erreicht.
88+
89+
# Plugin
90+
DUPLICATE_COLUMN=Doppelte Spalten gefunden: {0}, bitte verwenden Sie das Schlüsselwort 'as', um doppelte Spalten umzubenennen.
91+
INVALID_JSON_FROM_RESPONSE=Antwortdaten sind kein gültiges JSON, bitte überprüfen Sie Ihren Content-Type-Header.
92+
REACH_REDIRECT_LIMIT=Maximale Anzahl an HTTP-Weiterleitungen erreicht: {0}.
93+
GOOGLESHEETS_QUERY_PARAM_EMPTY=Google Sheets Abfrageparameter ist leer.
94+
GOOGLESHEETS_QUERY_PARAM_ERROR=Google Sheets Abfrageparameter ist ungültig: {0}.
95+
GOOGLESHEETS_REQUEST_ERROR=Google Sheets Anfrage fehlgeschlagen.
96+
GOOGLESHEETS_DATASOURCE_CONFIG_ERROR=Fehler beim Parsen der Google Sheets Datenquellenkonfiguration.
97+
GOOGLESHEETS_EMPTY_ROW=Keine Daten in dieser Zeile gefunden. Möchten Sie zuerst etwas einfügen?
98+
APPLICATION_EDIT_ERROR_LACK_OF_DATASOURCE_PERMISSIONS=Aktuelle Änderungen an dieser Anwendung werden nicht gespeichert, da Berechtigungen für einige Datenquellen fehlen.
99+
CERTIFICATE_EMPTY=Zertifikat ist leer.
100+
USER_NOT_EXIST=Benutzer existiert nicht.
101+
DUPLICATE_AUTH_CONFIG_ADDITION=Dieser Anbieter wurde bereits zur Organisation hinzugefügt.
102+
EMAIL_PROVIDER_DISABLED=E-Mail-Anbieter ist deaktiviert.
103+
SLUG_DUPLICATE_ENTRY=Slug existiert bereits.
104+
SLUG_INVALID=Slug-Format ist ungültig.
105+
FLOW_ERROR=Flow-Fehlermeldung: {0}.
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
import { dirToSpecList, specsToOptions, version2spec } from "../../common/util";
2+
import _ from "lodash";
3+
import path from "path";
4+
import { OpenAPI } from "openapi-types";
5+
import { ConfigToType, DataSourcePlugin, QueryConfig } from "lowcoder-sdk/dataSource";
6+
import { runOpenApi } from "../openApi";
7+
import { parseMultiOpenApi, ParseOpenApiOptions } from "../openApi/parse";
8+
9+
const specs = {
10+
"v4": dirToSpecList(path.join(__dirname, "./specsV4")),
11+
};
12+
13+
const dataSourceConfig = {
14+
type: "dataSource",
15+
params: [
16+
{
17+
type: "textInput",
18+
key: "authToken",
19+
label: "Private Access Token",
20+
placeholder: "<Your HubSpot private Apps Access Token>",
21+
tooltip: "Read more here: https://developers.hubspot.com/docs/guides/apps/private-apps/overview"
22+
},
23+
{
24+
label: "API Version",
25+
key: "specVersion",
26+
type: "select",
27+
tooltip: "Choose the HubSpot API Version.",
28+
placeholder: "v4",
29+
options: specsToOptions(specs)
30+
},
31+
],
32+
} as const;
33+
34+
const parseOptions: ParseOpenApiOptions = {
35+
actionLabel: (method: string, path: string, operation: OpenAPI.Operation) => {
36+
return _.upperFirst(operation.operationId || "");
37+
},
38+
};
39+
40+
let queryConfig: any = {};
41+
42+
type DataSourceConfigType = ConfigToType<typeof dataSourceConfig>;
43+
44+
const hubspotPlugin: DataSourcePlugin<any, DataSourceConfigType> = {
45+
id: "hubspot",
46+
name: "HubSpot",
47+
icon: "hubspot.svg",
48+
category: "CRM",
49+
dataSourceConfig,
50+
51+
queryConfig: async (data) => {
52+
if (!queryConfig[data.specVersion as keyof typeof queryConfig]) {
53+
const { actions, categories } = await parseMultiOpenApi(version2spec(specs, data.specVersion), parseOptions);
54+
queryConfig[data.specVersion as keyof typeof queryConfig] = {
55+
type: "query",
56+
label: "Action",
57+
categories: {
58+
label: "Resources",
59+
items: categories,
60+
},
61+
actions,
62+
};
63+
}
64+
return queryConfig[data.specVersion as keyof typeof queryConfig];
65+
},
66+
67+
run: function (actionData, dataSourceConfig): Promise<any> {
68+
const runApiDsConfig = {
69+
url: "",
70+
serverURL: "https://api.hubapi.com", // HubSpot API base URL
71+
dynamicParamsConfig: dataSourceConfig,
72+
specVersion: dataSourceConfig.specVersion,
73+
headers: {
74+
Authorization: `Bearer ${dataSourceConfig.authToken}`,
75+
},
76+
};
77+
return runOpenApi(actionData, runApiDsConfig, version2spec(specs, dataSourceConfig.specVersion));
78+
},
79+
};
80+
81+
export default hubspotPlugin;

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /