Baptiste Devessier
2025-05-12 12:09:46 +02:00
committed by GitHub
parent ca6e979ead
commit a4656b415c
68 changed files with 631 additions and 182 deletions

View File

@ -1488,6 +1488,11 @@ msgstr "Verwyder rekening en al die geassosieerde data"
msgid "Delete API key" msgid "Delete API key"
msgstr "Verwyder API-sleutel" msgstr "Verwyder API-sleutel"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Verwyder uit gunstelinge"
msgid "Remove option" msgid "Remove option"
msgstr "Verwyder opsie" msgstr "Verwyder opsie"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "حذف الحساب وكل البيانات المرتبطة به"
msgid "Delete API key" msgid "Delete API key"
msgstr "حذف مفتاح API" msgstr "حذف مفتاح API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "\\\\"
msgid "Remove option" msgid "Remove option"
msgstr "إزالة الخيار" msgstr "إزالة الخيار"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Suprimeix el compte i totes les dades associades"
msgid "Delete API key" msgid "Delete API key"
msgstr "Suprimeix la clau d'API" msgstr "Suprimeix la clau d'API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Elimina dels preferits"
msgid "Remove option" msgid "Remove option"
msgstr "Elimina opció" msgstr "Elimina opció"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Smazat účet a veškerá související data"
msgid "Delete API key" msgid "Delete API key"
msgstr "Smazat API klíč" msgstr "Smazat API klíč"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Odebrat z oblíbených"
msgid "Remove option" msgid "Remove option"
msgstr "Odstranit možnost" msgstr "Odstranit možnost"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Slet konto og alle de tilknyttede data"
msgid "Delete API key" msgid "Delete API key"
msgstr "Slet API nøgle" msgstr "Slet API nøgle"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Fjern fra favoritter"
msgid "Remove option" msgid "Remove option"
msgstr "Fjern mulighed" msgstr "Fjern mulighed"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Konto und alle zugehörigen Daten löschen"
msgid "Delete API key" msgid "Delete API key"
msgstr "API-Schlüssel löschen" msgstr "API-Schlüssel löschen"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Aus Favoriten entfernen"
msgid "Remove option" msgid "Remove option"
msgstr "Option entfernen" msgstr "Option entfernen"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Διαγραφή λογαριασμού και όλων των συσχ
msgid "Delete API key" msgid "Delete API key"
msgstr "Διαγραφή κλειδιού API" msgstr "Διαγραφή κλειδιού API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Αφαίρεση από τα αγαπημένα"
msgid "Remove option" msgid "Remove option"
msgstr "Αφαίρεση επιλογής" msgstr "Αφαίρεση επιλογής"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1483,6 +1483,11 @@ msgstr "Delete account and all the associated data"
msgid "Delete API key" msgid "Delete API key"
msgstr "Delete API key" msgstr "Delete API key"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr "Delete field"
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3881,6 +3886,11 @@ msgstr "Remove from favorites"
msgid "Remove option" msgid "Remove option"
msgstr "Remove option" msgstr "Remove option"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr "Reorder field"
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Eliminar la cuenta y todos los datos asociados"
msgid "Delete API key" msgid "Delete API key"
msgstr "Eliminar clave API" msgstr "Eliminar clave API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Quitar de favoritos"
msgid "Remove option" msgid "Remove option"
msgstr "Quitar opción" msgstr "Quitar opción"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Poista tili ja kaikki siihen liittyvät tiedot"
msgid "Delete API key" msgid "Delete API key"
msgstr "Poista API-avain" msgstr "Poista API-avain"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Poista suosikeista"
msgid "Remove option" msgid "Remove option"
msgstr "Poista vaihtoehto" msgstr "Poista vaihtoehto"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Supprimer le compte et toutes les données associées"
msgid "Delete API key" msgid "Delete API key"
msgstr "Supprimer la clé API" msgstr "Supprimer la clé API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Retirer des favoris"
msgid "Remove option" msgid "Remove option"
msgstr "Supprimer l'option" msgstr "Supprimer l'option"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1488,6 +1488,11 @@ msgstr "מחק חשבון ואת כל הנתונים הקשורים בו"
msgid "Delete API key" msgid "Delete API key"
msgstr "מחק מפתח API" msgstr "מחק מפתח API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "\\"
msgid "Remove option" msgid "Remove option"
msgstr "הסר אפשרות" msgstr "הסר אפשרות"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Fiók és az összes hozzá kapcsolódó adat törlése"
msgid "Delete API key" msgid "Delete API key"
msgstr "API kulcs törlése" msgstr "API kulcs törlése"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Eltávolítás a kedvencek közül"
msgid "Remove option" msgid "Remove option"
msgstr "Opció eltávolítása" msgstr "Opció eltávolítása"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Elimina l'account e tutti i dati associati"
msgid "Delete API key" msgid "Delete API key"
msgstr "Elimina chiave API" msgstr "Elimina chiave API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Rimuovi dai preferiti"
msgid "Remove option" msgid "Remove option"
msgstr "Rimuovi opzione" msgstr "Rimuovi opzione"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "アカウントと関連データをすべて削除"
msgid "Delete API key" msgid "Delete API key"
msgstr "APIキーを削除" msgstr "APIキーを削除"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "お気に入りから削除"
msgid "Remove option" msgid "Remove option"
msgstr "オプションを削除" msgstr "オプションを削除"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "계정 및 모든 관련 데이터 삭제"
msgid "Delete API key" msgid "Delete API key"
msgstr "API 키 삭제" msgstr "API 키 삭제"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "즐겨찾기에서 제거"
msgid "Remove option" msgid "Remove option"
msgstr "옵션 제거" msgstr "옵션 제거"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Account en alle bijbehorende gegevens verwijderen"
msgid "Delete API key" msgid "Delete API key"
msgstr "API-sleutel verwijderen" msgstr "API-sleutel verwijderen"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Verwijderen uit favorieten"
msgid "Remove option" msgid "Remove option"
msgstr "Optie verwijderen" msgstr "Optie verwijderen"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Slett kontoen og all tilknyttet data"
msgid "Delete API key" msgid "Delete API key"
msgstr "Slett API-n\\fkkel" msgstr "Slett API-n\\fkkel"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Fjern fra favoritter"
msgid "Remove option" msgid "Remove option"
msgstr "Fjern alternativ" msgstr "Fjern alternativ"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Usuń konto i wszystkie powiązane dane"
msgid "Delete API key" msgid "Delete API key"
msgstr "Usuń klucz API" msgstr "Usuń klucz API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Usuń z ulubionych"
msgid "Remove option" msgid "Remove option"
msgstr "Usuń opcję" msgstr "Usuń opcję"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1480,6 +1480,11 @@ msgstr ""
msgid "Delete API key" msgid "Delete API key"
msgstr "" msgstr ""
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3878,6 +3883,11 @@ msgstr ""
msgid "Remove option" msgid "Remove option"
msgstr "" msgstr ""
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Excluir a conta e todos os dados associados"
msgid "Delete API key" msgid "Delete API key"
msgstr "Excluir Chave API" msgstr "Excluir Chave API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Remover dos favoritos"
msgid "Remove option" msgid "Remove option"
msgstr "Remover opção" msgstr "Remover opção"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Eliminar conta e todos os dados associados"
msgid "Delete API key" msgid "Delete API key"
msgstr "Eliminar chave API" msgstr "Eliminar chave API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Remover dos favoritos"
msgid "Remove option" msgid "Remove option"
msgstr "Remover opção" msgstr "Remover opção"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Șterge contul și toate datele asociate"
msgid "Delete API key" msgid "Delete API key"
msgstr "Șterge cheia API" msgstr "Șterge cheia API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Elimină din favorite"
msgid "Remove option" msgid "Remove option"
msgstr "Elimină opțiunea" msgstr "Elimină opțiunea"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Обриши налог и све асоциране податке"
msgid "Delete API key" msgid "Delete API key"
msgstr "Обриши API кључ" msgstr "Обриши API кључ"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Уклоните из фаворита"
msgid "Remove option" msgid "Remove option"
msgstr "Уклони опцију" msgstr "Уклони опцију"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Radera konto och all associerad data"
msgid "Delete API key" msgid "Delete API key"
msgstr "Ta bort API-nyckel" msgstr "Ta bort API-nyckel"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Ta bort från favoriter"
msgid "Remove option" msgid "Remove option"
msgstr "Ta bort alternativ" msgstr "Ta bort alternativ"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Hesabı ve tüm ilişkili verileri sil"
msgid "Delete API key" msgid "Delete API key"
msgstr "API anahtarını sil" msgstr "API anahtarını sil"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Favorilerden çıkar"
msgid "Remove option" msgid "Remove option"
msgstr "Seçeneği kaldır" msgstr "Seçeneği kaldır"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Видалити обліковий запис та всі пов'яза
msgid "Delete API key" msgid "Delete API key"
msgstr "Видалити ключ API" msgstr "Видалити ключ API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Вилучити з обраного"
msgid "Remove option" msgid "Remove option"
msgstr "Видалити опцію" msgstr "Видалити опцію"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "Xóa tài khoản và tất cả dữ liệu liên quan"
msgid "Delete API key" msgid "Delete API key"
msgstr "Xóa khóa API" msgstr "Xóa khóa API"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "Loại bỏ khỏi mục yêu thích"
msgid "Remove option" msgid "Remove option"
msgstr "Xóa tùy chọn" msgstr "Xóa tùy chọn"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "删除账户和所有相关数据"
msgid "Delete API key" msgid "Delete API key"
msgstr "删除 API 密钥" msgstr "删除 API 密钥"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "从收藏中移除"
msgid "Remove option" msgid "Remove option"
msgstr "移除选项" msgstr "移除选项"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1488,6 +1488,11 @@ msgstr "刪除帳戶及所有相關數據"
msgid "Delete API key" msgid "Delete API key"
msgstr "刪除 API 密鑰" msgstr "刪除 API 密鑰"
#. js-lingui-id: x2p4/4
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Delete field"
msgstr ""
#. js-lingui-id: 4dpwsE #. js-lingui-id: 4dpwsE
#: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts #: src/modules/action-menu/actions/record-actions/constants/DefaultActionsConfig.ts
#~ msgid "Delete record" #~ msgid "Delete record"
@ -3886,6 +3891,11 @@ msgstr "從收藏中移除"
msgid "Remove option" msgid "Remove option"
msgstr "移除選項" msgstr "移除選項"
#. js-lingui-id: Ee8JBW
#: src/modules/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder.tsx
msgid "Reorder field"
msgstr ""
#. js-lingui-id: OfhWJH #. js-lingui-id: OfhWJH
#: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx #: src/pages/settings/admin-panel/SettingsAdminConfigVariableDetails.tsx
#: src/modules/views/components/ViewBarDetails.tsx #: src/modules/views/components/ViewBarDetails.tsx

View File

@ -1,5 +1,4 @@
import styled from '@emotion/styled'; import styled from '@emotion/styled';
import { ReactNode } from 'react';
const StyledFormFieldInputContainer = styled.div` const StyledFormFieldInputContainer = styled.div`
display: flex; display: flex;
@ -7,16 +6,4 @@ const StyledFormFieldInputContainer = styled.div`
width: 100%; width: 100%;
`; `;
export const FormFieldInputContainer = ({ export { StyledFormFieldInputContainer as FormFieldInputContainer };
children,
testId,
}: {
children: ReactNode;
testId?: string;
}) => {
return (
<StyledFormFieldInputContainer data-testid={testId}>
{children}
</StyledFormFieldInputContainer>
);
};

View File

@ -181,7 +181,7 @@ export const FormMultiSelectFieldInput = ({
const placeholderText = placeholder ?? label; const placeholderText = placeholder ?? label;
return ( return (
<FormFieldInputContainer testId={testId}> <FormFieldInputContainer data-testid={testId}>
{label ? <InputLabel>{label}</InputLabel> : null} {label ? <InputLabel>{label}</InputLabel> : null}
<FormFieldInputRowContainer> <FormFieldInputRowContainer>

View File

@ -144,7 +144,7 @@ export const FormSingleRecordPicker = ({
}; };
return ( return (
<FormFieldInputContainer testId={testId}> <FormFieldInputContainer data-testid={testId}>
{label ? <InputLabel>{label}</InputLabel> : null} {label ? <InputLabel>{label}</InputLabel> : null}
<FormFieldInputRowContainer> <FormFieldInputRowContainer>
{disabled ? ( {disabled ? (

View File

@ -1,12 +1,17 @@
import { useTheme } from '@emotion/react'; import { useTheme } from '@emotion/react';
import { Draggable } from '@hello-pangea/dnd'; import { Draggable } from '@hello-pangea/dnd';
import { isFunction } from '@sniptt/guards';
type DraggableItemProps = { type DraggableItemProps = {
draggableId: string; draggableId: string;
isDragDisabled?: boolean; isDragDisabled?: boolean;
index: number; index: number;
itemComponent: JSX.Element; itemComponent:
| JSX.Element
| ((props: { isDragging: boolean }) => JSX.Element);
isInsideScrollableContainer?: boolean; isInsideScrollableContainer?: boolean;
draggableComponentStyles?: React.CSSProperties;
disableDraggingBackground?: boolean;
}; };
export const DraggableItem = ({ export const DraggableItem = ({
@ -15,8 +20,11 @@ export const DraggableItem = ({
index, index,
itemComponent, itemComponent,
isInsideScrollableContainer, isInsideScrollableContainer,
draggableComponentStyles,
disableDraggingBackground,
}: DraggableItemProps) => { }: DraggableItemProps) => {
const theme = useTheme(); const theme = useTheme();
return ( return (
<Draggable <Draggable
key={draggableId} key={draggableId}
@ -26,7 +34,8 @@ export const DraggableItem = ({
> >
{(draggableProvided, draggableSnapshot) => { {(draggableProvided, draggableSnapshot) => {
const draggableStyle = draggableProvided.draggableProps.style; const draggableStyle = draggableProvided.draggableProps.style;
const isDragged = draggableSnapshot.isDragging; const isDragging = draggableSnapshot.isDragging;
return ( return (
<div <div
ref={draggableProvided.innerRef} ref={draggableProvided.innerRef}
@ -35,6 +44,7 @@ export const DraggableItem = ({
// eslint-disable-next-line react/jsx-props-no-spreading // eslint-disable-next-line react/jsx-props-no-spreading
{...draggableProvided.dragHandleProps} {...draggableProvided.dragHandleProps}
style={{ style={{
...draggableComponentStyles,
...draggableStyle, ...draggableStyle,
left: 'auto', left: 'auto',
...(isInsideScrollableContainer ? {} : { top: 'auto' }), ...(isInsideScrollableContainer ? {} : { top: 'auto' }),
@ -42,12 +52,17 @@ export const DraggableItem = ({
/\(-?\d+px,/, /\(-?\d+px,/,
'(0,', '(0,',
), ),
background: isDragged background:
? theme.background.transparent.light !disableDraggingBackground && isDragging
: 'none', ? theme.background.transparent.light
: 'none',
}} }}
> >
{itemComponent} {isFunction(itemComponent)
? itemComponent({
isDragging,
})
: itemComponent}
</div> </div>
); );
}} }}

View File

@ -2,6 +2,8 @@ import { FormFieldInputContainer } from '@/object-record/record-field/form-types
import { FormFieldInputInnerContainer } from '@/object-record/record-field/form-types/components/FormFieldInputInnerContainer'; import { FormFieldInputInnerContainer } from '@/object-record/record-field/form-types/components/FormFieldInputInnerContainer';
import { FormFieldInputRowContainer } from '@/object-record/record-field/form-types/components/FormFieldInputRowContainer'; import { FormFieldInputRowContainer } from '@/object-record/record-field/form-types/components/FormFieldInputRowContainer';
import { InputLabel } from '@/ui/input/components/InputLabel'; import { InputLabel } from '@/ui/input/components/InputLabel';
import { DraggableItem } from '@/ui/layout/draggable-list/components/DraggableItem';
import { DraggableList } from '@/ui/layout/draggable-list/components/DraggableList';
import { WorkflowFormAction } from '@/workflow/types/Workflow'; import { WorkflowFormAction } from '@/workflow/types/Workflow';
import { WorkflowStepBody } from '@/workflow/workflow-steps/components/WorkflowStepBody'; import { WorkflowStepBody } from '@/workflow/workflow-steps/components/WorkflowStepBody';
import { WorkflowStepHeader } from '@/workflow/workflow-steps/components/WorkflowStepHeader'; import { WorkflowStepHeader } from '@/workflow/workflow-steps/components/WorkflowStepHeader';
@ -13,19 +15,21 @@ import { useActionIconColorOrThrow } from '@/workflow/workflow-steps/workflow-ac
import { getActionIcon } from '@/workflow/workflow-steps/workflow-actions/utils/getActionIcon'; import { getActionIcon } from '@/workflow/workflow-steps/workflow-actions/utils/getActionIcon';
import { useTheme } from '@emotion/react'; import { useTheme } from '@emotion/react';
import styled from '@emotion/styled'; import styled from '@emotion/styled';
import { OnDragEndResponder } from '@hello-pangea/dnd';
import { useLingui } from '@lingui/react/macro'; import { useLingui } from '@lingui/react/macro';
import { useEffect, useState } from 'react';
import { useDebouncedCallback } from 'use-debounce';
import { isNonEmptyString } from '@sniptt/guards'; import { isNonEmptyString } from '@sniptt/guards';
import { useEffect, useState } from 'react';
import { FieldMetadataType } from 'twenty-shared/types'; import { FieldMetadataType } from 'twenty-shared/types';
import { isDefined } from 'twenty-shared/utils'; import { isDefined } from 'twenty-shared/utils';
import { import {
IconChevronDown, IconChevronDown,
IconGripVertical,
IconPlus, IconPlus,
IconTrash, IconTrash,
useIcons, useIcons,
} from 'twenty-ui/display'; } from 'twenty-ui/display';
import { LightIconButton } from 'twenty-ui/input';
import { useDebouncedCallback } from 'use-debounce';
import { v4 } from 'uuid'; import { v4 } from 'uuid';
export type WorkflowEditActionFormBuilderProps = { export type WorkflowEditActionFormBuilderProps = {
@ -42,10 +46,45 @@ export type WorkflowEditActionFormBuilderProps = {
type FormData = WorkflowFormActionField[]; type FormData = WorkflowFormActionField[];
const StyledRowContainer = styled.div` const StyledWorkflowStepBody = styled(WorkflowStepBody)`
display: block;
padding-inline: ${({ theme }) => theme.spacing(2)};
`;
const StyledFormFieldContainer = styled.div`
align-items: flex-end;
column-gap: ${({ theme }) => theme.spacing(1)}; column-gap: ${({ theme }) => theme.spacing(1)};
display: grid; display: grid;
grid-template-columns: 1fr 16px; grid-template-areas:
'grip input delete'
'. settings .';
grid-template-columns: 24px 1fr 24px;
position: relative;
`;
const StyledDraggingIndicator = styled.div`
position: absolute;
inset: ${({ theme }) => theme.spacing(-2)};
top: ${({ theme }) => theme.spacing(-1)};
background-color: ${({ theme }) => theme.background.transparent.light};
`;
const StyledLightGripIconButton = styled(LightIconButton)`
grid-area: grip;
margin-bottom: ${({ theme }) => theme.spacing(1)};
`;
const StyledLightTrashIconButton = styled(LightIconButton)`
grid-area: delete;
margin-bottom: ${({ theme }) => theme.spacing(1)};
`;
const StyledFormFieldInputContainer = styled(FormFieldInputContainer)`
grid-area: input;
`;
const StyledOpenedSettingsContainer = styled.div`
grid-area: settings;
`; `;
const StyledFieldContainer = styled.div` const StyledFieldContainer = styled.div`
@ -71,22 +110,8 @@ const StyledPlaceholder = styled.div`
width: 100%; width: 100%;
`; `;
const StyledIconButtonContainer = styled.div`
align-items: center;
border-radius: ${({ theme }) => theme.border.radius.md};
display: flex;
justify-content: center;
width: 24px;
cursor: pointer;
&:hover,
&[data-open='true'] {
background-color: ${({ theme }) => theme.background.transparent.lighter};
}
`;
const StyledAddFieldButtonContainer = styled.div` const StyledAddFieldButtonContainer = styled.div`
padding-inline: ${({ theme }) => theme.spacing(7)};
padding-top: ${({ theme }) => theme.spacing(2)}; padding-top: ${({ theme }) => theme.spacing(2)};
`; `;
@ -100,10 +125,6 @@ const StyledAddFieldButtonContentContainer = styled.div`
width: 100%; width: 100%;
`; `;
const StyledLabelContainer = styled.div`
min-height: 17px;
`;
export const WorkflowEditActionFormBuilder = ({ export const WorkflowEditActionFormBuilder = ({
action, action,
actionOptions, actionOptions,
@ -121,8 +142,11 @@ export const WorkflowEditActionFormBuilder = ({
const [selectedField, setSelectedField] = useState<string | null>(null); const [selectedField, setSelectedField] = useState<string | null>(null);
const [hoveredField, setHoveredField] = useState<string | null>(null); const [hoveredField, setHoveredField] = useState<string | null>(null);
const isFieldSelected = (fieldName: string) => selectedField === fieldName; const isFieldSelected = (fieldName: string) => selectedField === fieldName;
const isFieldHovered = (fieldName: string) => hoveredField === fieldName; const isFieldHovered = (fieldName: string) => hoveredField === fieldName;
const handleFieldClick = (fieldName: string) => { const handleFieldClick = (fieldName: string) => {
if (actionOptions.readonly === true) { if (actionOptions.readonly === true) {
return; return;
@ -149,6 +173,27 @@ export const WorkflowEditActionFormBuilder = ({
saveAction(updatedFormData); saveAction(updatedFormData);
}; };
const handleDragEnd: OnDragEndResponder = ({ source, destination }) => {
if (actionOptions.readonly === true) {
return;
}
const movedField = formData.at(source.index);
if (!isDefined(movedField) || !isDefined(destination)) {
return;
}
const copiedFormData = [...formData];
copiedFormData.splice(source.index, 1);
copiedFormData.splice(destination.index, 0, movedField);
setFormData(copiedFormData);
saveAction(copiedFormData);
};
const saveAction = useDebouncedCallback(async (formData: FormData) => { const saveAction = useDebouncedCallback(async (formData: FormData) => {
if (actionOptions.readonly === true) { if (actionOptions.readonly === true) {
return; return;
@ -188,121 +233,158 @@ export const WorkflowEditActionFormBuilder = ({
headerType={headerType} headerType={headerType}
disabled={actionOptions.readonly} disabled={actionOptions.readonly}
/> />
<WorkflowStepBody> <StyledWorkflowStepBody>
{formData.map((field) => ( <DraggableList
<FormFieldInputContainer key={field.id}> onDragEnd={handleDragEnd}
<StyledLabelContainer> draggableItems={
<InputLabel>{field.label || ''}</InputLabel> <>
</StyledLabelContainer> {formData.map((field, index) => (
<DraggableItem
key={field.id}
draggableId={field.id}
index={index}
isDragDisabled={actionOptions.readonly}
isInsideScrollableContainer
disableDraggingBackground
draggableComponentStyles={{
marginBottom: theme.spacing(4),
}}
itemComponent={({ isDragging }) => {
const showButtons =
!actionOptions.readonly &&
(isFieldSelected(field.id) ||
isFieldHovered(field.id) ||
isDragging);
<StyledRowContainer return (
onMouseEnter={() => setHoveredField(field.id)} <StyledFormFieldContainer
onMouseLeave={() => setHoveredField(null)} key={field.id}
> onMouseEnter={() => setHoveredField(field.id)}
onMouseLeave={() => setHoveredField(null)}
>
{isDragging && <StyledDraggingIndicator />}
{showButtons && (
<StyledLightGripIconButton
Icon={IconGripVertical}
aria-label={t`Reorder field`}
/>
)}
<StyledFormFieldInputContainer>
<InputLabel>{field.label || ''}</InputLabel>
<FormFieldInputRowContainer>
<FormFieldInputInnerContainer
hasRightElement={false}
onClick={() => {
handleFieldClick(field.id);
}}
>
<StyledFieldContainer>
<StyledPlaceholder>
{isDefined(field.placeholder) &&
isNonEmptyString(field.placeholder)
? field.placeholder
: getDefaultFormFieldSettings(field.type)
.placeholder}
</StyledPlaceholder>
{field.type === 'RECORD' && (
<IconChevronDown
size={theme.icon.size.md}
color={theme.font.color.tertiary}
/>
)}
</StyledFieldContainer>
</FormFieldInputInnerContainer>
</FormFieldInputRowContainer>
</StyledFormFieldInputContainer>
{showButtons && (
<StyledLightTrashIconButton
Icon={IconTrash}
aria-label={t`Delete field`}
onClick={() => {
const updatedFormData = formData.filter(
(currentField) => currentField.id !== field.id,
);
setFormData(updatedFormData);
actionOptions.onActionUpdate({
...action,
settings: {
...action.settings,
input: updatedFormData,
},
});
}}
/>
)}
{isFieldSelected(field.id) && (
<StyledOpenedSettingsContainer>
<WorkflowEditActionFormFieldSettings
field={field}
onChange={onFieldUpdate}
onClose={() => {
setSelectedField(null);
}}
/>
</StyledOpenedSettingsContainer>
)}
</StyledFormFieldContainer>
);
}}
/>
))}
</>
}
/>
{!actionOptions.readonly && (
<StyledAddFieldButtonContainer>
<FormFieldInputContainer>
<FormFieldInputRowContainer> <FormFieldInputRowContainer>
<FormFieldInputInnerContainer <FormFieldInputInnerContainer
hasRightElement={false} hasRightElement={false}
onClick={() => { onClick={() => {
handleFieldClick(field.id); const { label, name } = getDefaultFormFieldSettings(
FieldMetadataType.TEXT,
);
const newField: WorkflowFormActionField = {
id: v4(),
name,
type: FieldMetadataType.TEXT,
label,
};
setFormData([...formData, newField]);
actionOptions.onActionUpdate({
...action,
settings: {
...action.settings,
input: [...action.settings.input, newField],
},
});
setSelectedField(newField.id);
}} }}
> >
<StyledFieldContainer> <StyledFieldContainer>
<StyledPlaceholder> <StyledAddFieldButtonContentContainer>
{isDefined(field.placeholder) && <IconPlus size={theme.icon.size.sm} />
isNonEmptyString(field.placeholder) {t`Add Field`}
? field.placeholder </StyledAddFieldButtonContentContainer>
: getDefaultFormFieldSettings(field.type).placeholder}
</StyledPlaceholder>
{field.type === 'RECORD' && (
<IconChevronDown
size={theme.icon.size.md}
color={theme.font.color.tertiary}
/>
)}
</StyledFieldContainer> </StyledFieldContainer>
</FormFieldInputInnerContainer> </FormFieldInputInnerContainer>
</FormFieldInputRowContainer> </FormFieldInputRowContainer>
{!actionOptions.readonly && </FormFieldInputContainer>
(isFieldSelected(field.id) || isFieldHovered(field.id)) && (
<StyledIconButtonContainer>
<IconTrash
size={theme.icon.size.md}
color={theme.font.color.secondary}
onClick={() => {
const updatedFormData = formData.filter(
(currentField) => currentField.id !== field.id,
);
setFormData(updatedFormData);
actionOptions.onActionUpdate({
...action,
settings: {
...action.settings,
input: updatedFormData,
},
});
}}
/>
</StyledIconButtonContainer>
)}
{isFieldSelected(field.id) && (
<WorkflowEditActionFormFieldSettings
field={field}
onChange={onFieldUpdate}
onClose={() => {
setSelectedField(null);
}}
/>
)}
</StyledRowContainer>
</FormFieldInputContainer>
))}
{!actionOptions.readonly && (
<StyledAddFieldButtonContainer>
<StyledRowContainer>
<FormFieldInputContainer>
<FormFieldInputRowContainer>
<FormFieldInputInnerContainer
hasRightElement={false}
onClick={() => {
const { label, name } = getDefaultFormFieldSettings(
FieldMetadataType.TEXT,
);
const newField: WorkflowFormActionField = {
id: v4(),
name,
type: FieldMetadataType.TEXT,
label,
};
setFormData([...formData, newField]);
actionOptions.onActionUpdate({
...action,
settings: {
...action.settings,
input: [...action.settings.input, newField],
},
});
setSelectedField(newField.id);
}}
>
<StyledFieldContainer>
<StyledAddFieldButtonContentContainer>
<IconPlus size={theme.icon.size.sm} />
{t`Add Field`}
</StyledAddFieldButtonContentContainer>
</StyledFieldContainer>
</FormFieldInputInnerContainer>
</FormFieldInputRowContainer>
</FormFieldInputContainer>
</StyledRowContainer>
</StyledAddFieldButtonContainer> </StyledAddFieldButtonContainer>
)} )}
</WorkflowStepBody> </StyledWorkflowStepBody>
</> </>
); );
}; };

View File

@ -1,14 +1,13 @@
import { WorkflowFormAction } from '@/workflow/types/Workflow'; import { WorkflowFormAction } from '@/workflow/types/Workflow';
import { WorkflowEditActionFormBuilder } from '@/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder'; import { WorkflowEditActionFormBuilder } from '@/workflow/workflow-steps/workflow-actions/form-action/components/WorkflowEditActionFormBuilder';
import { Meta, StoryObj } from '@storybook/react'; import { Meta, StoryObj } from '@storybook/react';
import { expect, fn, within } from '@storybook/test'; import { expect, fn, userEvent, waitFor, within } from '@storybook/test';
import { userEvent } from '@storybook/testing-library';
import { FieldMetadataType } from 'twenty-shared/types'; import { FieldMetadataType } from 'twenty-shared/types';
import { ComponentDecorator, RouterDecorator } from 'twenty-ui/testing';
import { I18nFrontDecorator } from '~/testing/decorators/I18nFrontDecorator'; import { I18nFrontDecorator } from '~/testing/decorators/I18nFrontDecorator';
import { WorkflowStepActionDrawerDecorator } from '~/testing/decorators/WorkflowStepActionDrawerDecorator'; import { WorkflowStepActionDrawerDecorator } from '~/testing/decorators/WorkflowStepActionDrawerDecorator';
import { graphqlMocks } from '~/testing/graphqlMocks'; import { graphqlMocks } from '~/testing/graphqlMocks';
import { getWorkflowNodeIdMock } from '~/testing/mock-data/workflow'; import { getWorkflowNodeIdMock } from '~/testing/mock-data/workflow';
import { ComponentDecorator, RouterDecorator } from 'twenty-ui/testing';
const DEFAULT_ACTION = { const DEFAULT_ACTION = {
id: getWorkflowNodeIdMock(), id: getWorkflowNodeIdMock(),
@ -81,6 +80,72 @@ export const Default: Story = {
}, },
}; };
export const DeleteFields: Story = {
args: {
actionOptions: {
onActionUpdate: fn(),
},
},
play: async ({ canvasElement, args }) => {
const canvas = within(canvasElement);
const companyInput = await canvas.findByText('Company');
await userEvent.hover(companyInput);
const deleteButton = await canvas.findByRole('button', {
name: 'Delete field',
});
await userEvent.click(deleteButton);
await waitFor(() => {
expect(canvas.queryByText('Company')).not.toBeInTheDocument();
});
await waitFor(() => {
const actionOptions = args.actionOptions as typeof args.actionOptions & {
readonly?: false;
};
expect(actionOptions.onActionUpdate).toHaveBeenCalledWith(
expect.objectContaining({
settings: expect.objectContaining({
input: [
{
id: 'ed00b897-519f-44cd-8201-a6502a3a9dc9',
name: 'number',
type: FieldMetadataType.NUMBER,
label: 'Number',
placeholder: '1000',
settings: {},
},
],
}),
}),
);
});
},
};
export const OpenFieldSettings: Story = {
args: {
actionOptions: {
onActionUpdate: fn(),
},
},
play: async ({ canvasElement }) => {
const canvas = within(canvasElement);
const companyInput = await canvas.findByText('Select a company');
await userEvent.click(companyInput);
const inputSettingsLabel = await canvas.findByText('Input settings');
expect(inputSettingsLabel).toBeVisible();
},
};
export const DisabledWithEmptyValues: Story = { export const DisabledWithEmptyValues: Story = {
args: { args: {
actionOptions: { actionOptions: {