@open-mercato/core 0.6.6 → 0.6.7-develop.6552.1.5208a19369
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/.turbo/turbo-build.log +2 -2
- package/dist/generated/entities/gateway_session_initialization/index.js +23 -0
- package/dist/generated/entities/gateway_session_initialization/index.js.map +7 -0
- package/dist/generated/entities.ids.generated.js +1 -0
- package/dist/generated/entities.ids.generated.js.map +2 -2
- package/dist/generated/entity-fields-registry.js +12 -0
- package/dist/generated/entity-fields-registry.js.map +2 -2
- package/dist/modules/api_keys/api/keys/route.js +30 -13
- package/dist/modules/api_keys/api/keys/route.js.map +2 -2
- package/dist/modules/api_keys/cli.js +2 -1
- package/dist/modules/api_keys/cli.js.map +2 -2
- package/dist/modules/attachments/api/file/[id]/route.js +9 -7
- package/dist/modules/attachments/api/file/[id]/route.js.map +2 -2
- package/dist/modules/attachments/api/image/[id]/[[...slug]]/route.js +9 -7
- package/dist/modules/attachments/api/image/[id]/[[...slug]]/route.js.map +2 -2
- package/dist/modules/attachments/api/route.js +21 -17
- package/dist/modules/attachments/api/route.js.map +2 -2
- package/dist/modules/attachments/components/AttachmentContentPreview.js +6 -35
- package/dist/modules/attachments/components/AttachmentContentPreview.js.map +2 -2
- package/dist/modules/attachments/lib/reconcileOrganization.js +110 -0
- package/dist/modules/attachments/lib/reconcileOrganization.js.map +7 -0
- package/dist/modules/attachments/lib/requestScope.js +10 -0
- package/dist/modules/attachments/lib/requestScope.js.map +7 -0
- package/dist/modules/audit_logs/backend/audit-logs/page.js +14 -24
- package/dist/modules/audit_logs/backend/audit-logs/page.js.map +2 -2
- package/dist/modules/auth/api/autologin.js +85 -0
- package/dist/modules/auth/api/autologin.js.map +7 -0
- package/dist/modules/auth/api/users/route.js +6 -2
- package/dist/modules/auth/api/users/route.js.map +2 -2
- package/dist/modules/auth/cli.js +3 -2
- package/dist/modules/auth/cli.js.map +2 -2
- package/dist/modules/auth/lib/autologin.js +19 -0
- package/dist/modules/auth/lib/autologin.js.map +7 -0
- package/dist/modules/configs/lib/upgrade-actions.js +22 -0
- package/dist/modules/configs/lib/upgrade-actions.js.map +2 -2
- package/dist/modules/customer_accounts/api/admin/roles/[id]/acl.js +1 -0
- package/dist/modules/customer_accounts/api/admin/roles/[id]/acl.js.map +2 -2
- package/dist/modules/customer_accounts/api/admin/roles/[id].js +17 -3
- package/dist/modules/customer_accounts/api/admin/roles/[id].js.map +2 -2
- package/dist/modules/customer_accounts/api/portal/users/[id]/roles.js +6 -1
- package/dist/modules/customer_accounts/api/portal/users/[id]/roles.js.map +2 -2
- package/dist/modules/customer_accounts/api/portal/users-invite.js +6 -1
- package/dist/modules/customer_accounts/api/portal/users-invite.js.map +2 -2
- package/dist/modules/customer_accounts/services/customerInvitationService.js +1 -0
- package/dist/modules/customer_accounts/services/customerInvitationService.js.map +2 -2
- package/dist/modules/customer_accounts/services/customerRbacService.js +6 -1
- package/dist/modules/customer_accounts/services/customerRbacService.js.map +2 -2
- package/dist/modules/customer_accounts/widgets/injection-table.js +0 -2
- package/dist/modules/customer_accounts/widgets/injection-table.js.map +2 -2
- package/dist/modules/customers/backend/customers/companies-v2/[id]/page.js +7 -1
- package/dist/modules/customers/backend/customers/companies-v2/[id]/page.js.map +2 -2
- package/dist/modules/customers/backend/customers/deals/pipeline/components/ViewTabsRow.js +2 -2
- package/dist/modules/customers/backend/customers/deals/pipeline/components/ViewTabsRow.js.map +2 -2
- package/dist/modules/customers/components/detail/CompanyDetailTabs.js +37 -43
- package/dist/modules/customers/components/detail/CompanyDetailTabs.js.map +2 -2
- package/dist/modules/customers/components/detail/DealDetailTabs.js +23 -35
- package/dist/modules/customers/components/detail/DealDetailTabs.js.map +2 -2
- package/dist/modules/customers/components/detail/DetailTabsLayout.js +6 -21
- package/dist/modules/customers/components/detail/DetailTabsLayout.js.map +2 -2
- package/dist/modules/customers/components/detail/MobilePersonDetail.js +26 -32
- package/dist/modules/customers/components/detail/MobilePersonDetail.js.map +2 -2
- package/dist/modules/customers/components/detail/PersonDetailTabs.js +29 -39
- package/dist/modules/customers/components/detail/PersonDetailTabs.js.map +2 -2
- package/dist/modules/customers/components/detail/useDealsAccess.js +16 -0
- package/dist/modules/customers/components/detail/useDealsAccess.js.map +7 -0
- package/dist/modules/dashboards/api/roles/widgets/route.js +22 -3
- package/dist/modules/dashboards/api/roles/widgets/route.js.map +2 -2
- package/dist/modules/dashboards/api/users/widgets/route.js +22 -3
- package/dist/modules/dashboards/api/users/widgets/route.js.map +2 -2
- package/dist/modules/dashboards/cli.js +4 -3
- package/dist/modules/dashboards/cli.js.map +2 -2
- package/dist/modules/dashboards/lib/widgetAssignmentScope.js +9 -1
- package/dist/modules/dashboards/lib/widgetAssignmentScope.js.map +2 -2
- package/dist/modules/dictionaries/commands/entries.js +7 -14
- package/dist/modules/dictionaries/commands/entries.js.map +2 -2
- package/dist/modules/dictionaries/commands/entry-operations.js +7 -16
- package/dist/modules/dictionaries/commands/entry-operations.js.map +2 -2
- package/dist/modules/dictionaries/commands/factory.js +9 -3
- package/dist/modules/dictionaries/commands/factory.js.map +2 -2
- package/dist/modules/dictionaries/fields/dictionary.js +56 -41
- package/dist/modules/dictionaries/fields/dictionary.js.map +2 -2
- package/dist/modules/directory/utils/organizationScope.js +10 -3
- package/dist/modules/directory/utils/organizationScope.js.map +2 -2
- package/dist/modules/entities/api/records.js +5 -4
- package/dist/modules/entities/api/records.js.map +2 -2
- package/dist/modules/entities/backend/entities/system/[entityId]/page.meta.js +1 -0
- package/dist/modules/entities/backend/entities/system/[entityId]/page.meta.js.map +2 -2
- package/dist/modules/entities/backend/entities/user/[entityId]/page.js +49 -49
- package/dist/modules/entities/backend/entities/user/[entityId]/page.js.map +2 -2
- package/dist/modules/entities/backend/entities/user/[entityId]/page.meta.js +1 -0
- package/dist/modules/entities/backend/entities/user/[entityId]/page.meta.js.map +2 -2
- package/dist/modules/entities/cli.js +2 -1
- package/dist/modules/entities/cli.js.map +2 -2
- package/dist/modules/feature_toggles/api/check/boolean/route.js +0 -14
- package/dist/modules/feature_toggles/api/check/boolean/route.js.map +2 -2
- package/dist/modules/feature_toggles/defaults.json +8 -0
- package/dist/modules/integrations/backend/integrations/[id]/page.js +9 -80
- package/dist/modules/integrations/backend/integrations/[id]/page.js.map +2 -2
- package/dist/modules/payment_gateways/data/entities.js +45 -0
- package/dist/modules/payment_gateways/data/entities.js.map +2 -2
- package/dist/modules/payment_gateways/lib/gateway-service.js +173 -38
- package/dist/modules/payment_gateways/lib/gateway-service.js.map +3 -3
- package/dist/modules/payment_gateways/lib/session-idempotency.js +104 -0
- package/dist/modules/payment_gateways/lib/session-idempotency.js.map +7 -0
- package/dist/modules/payment_gateways/migrations/Migration20260709220938_payment_gateways.js +11 -0
- package/dist/modules/payment_gateways/migrations/Migration20260709220938_payment_gateways.js.map +7 -0
- package/dist/modules/planner/backend/planner/availability-rulesets/[id]/page.js +16 -14
- package/dist/modules/planner/backend/planner/availability-rulesets/[id]/page.js.map +2 -2
- package/dist/modules/planner/components/AvailabilityRulesEditor.js +18 -30
- package/dist/modules/planner/components/AvailabilityRulesEditor.js.map +2 -2
- package/dist/modules/query_index/api/status.js +2 -8
- package/dist/modules/query_index/api/status.js.map +2 -2
- package/dist/modules/resources/backend/resources/resources/[id]/page.js +24 -24
- package/dist/modules/resources/backend/resources/resources/[id]/page.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/create/page.js +6 -0
- package/dist/modules/sales/backend/sales/channels/create/page.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/create/page.meta.js +2 -0
- package/dist/modules/sales/backend/sales/channels/create/page.meta.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/offers/page.js +6 -0
- package/dist/modules/sales/backend/sales/channels/offers/page.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/offers/page.meta.js +2 -0
- package/dist/modules/sales/backend/sales/channels/offers/page.meta.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/page.js +6 -0
- package/dist/modules/sales/backend/sales/channels/page.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/page.meta.js +2 -0
- package/dist/modules/sales/backend/sales/channels/page.meta.js.map +2 -2
- package/dist/modules/sales/backend/sales/documents/[id]/page.js +6 -4
- package/dist/modules/sales/backend/sales/documents/[id]/page.js.map +2 -2
- package/dist/modules/sales/commands/documents.js +44 -0
- package/dist/modules/sales/commands/documents.js.map +2 -2
- package/dist/modules/sales/commands/returns.js +2 -27
- package/dist/modules/sales/commands/returns.js.map +2 -2
- package/dist/modules/sales/components/SalesChannelsDisabledNotice.js +15 -0
- package/dist/modules/sales/components/SalesChannelsDisabledNotice.js.map +7 -0
- package/dist/modules/sales/components/documents/AddressesSection.js +6 -2
- package/dist/modules/sales/components/documents/AddressesSection.js.map +2 -2
- package/dist/modules/sales/components/documents/ItemsSection.js +1 -0
- package/dist/modules/sales/components/documents/ItemsSection.js.map +2 -2
- package/dist/modules/sales/components/documents/LineItemDialog.js +9 -0
- package/dist/modules/sales/components/documents/LineItemDialog.js.map +2 -2
- package/dist/modules/sales/components/documents/SalesDocumentForm.js +51 -3
- package/dist/modules/sales/components/documents/SalesDocumentForm.js.map +2 -2
- package/dist/modules/sales/components/documents/SalesDocumentsTable.js +10 -8
- package/dist/modules/sales/components/documents/SalesDocumentsTable.js.map +2 -2
- package/dist/modules/sales/components/documents/ShipmentDialog.js +59 -38
- package/dist/modules/sales/components/documents/ShipmentDialog.js.map +2 -2
- package/dist/modules/sales/components/useSalesChannelsEnabled.js +44 -0
- package/dist/modules/sales/components/useSalesChannelsEnabled.js.map +7 -0
- package/dist/modules/sales/lib/salesChannelsToggle.js +18 -0
- package/dist/modules/sales/lib/salesChannelsToggle.js.map +7 -0
- package/dist/modules/sales/lib/salesChannelsToggleId.js +5 -0
- package/dist/modules/sales/lib/salesChannelsToggleId.js.map +7 -0
- package/dist/modules/sales/lib/shipments/snapshots.js +27 -1
- package/dist/modules/sales/lib/shipments/snapshots.js.map +2 -2
- package/dist/modules/staff/backend/staff/team-members/[id]/page.js +22 -25
- package/dist/modules/staff/backend/staff/team-members/[id]/page.js.map +2 -2
- package/dist/modules/staff/backend/staff/teams/[id]/edit/page.js +12 -14
- package/dist/modules/staff/backend/staff/teams/[id]/edit/page.js.map +2 -2
- package/dist/modules/staff/lib/timesheets-projects-ui/SavedViewTabs.js +10 -29
- package/dist/modules/staff/lib/timesheets-projects-ui/SavedViewTabs.js.map +2 -2
- package/dist/modules/sync_excel/lib/adapters/customers.js +19 -20
- package/dist/modules/sync_excel/lib/adapters/customers.js.map +2 -2
- package/dist/modules/sync_excel/lib/parser.js +185 -0
- package/dist/modules/sync_excel/lib/parser.js.map +2 -2
- package/dist/modules/sync_excel/lib/upload-storage.js +20 -1
- package/dist/modules/sync_excel/lib/upload-storage.js.map +2 -2
- package/generated/entities/gateway_session_initialization/index.ts +10 -0
- package/generated/entities.ids.generated.ts +1 -0
- package/generated/entity-fields-registry.ts +12 -0
- package/package.json +9 -8
- package/src/modules/api_keys/api/keys/route.ts +36 -13
- package/src/modules/api_keys/cli.ts +2 -3
- package/src/modules/attachments/api/file/[id]/route.ts +11 -7
- package/src/modules/attachments/api/image/[id]/[[...slug]]/route.ts +11 -7
- package/src/modules/attachments/api/route.ts +26 -21
- package/src/modules/attachments/components/AttachmentContentPreview.tsx +9 -44
- package/src/modules/attachments/lib/reconcileOrganization.ts +188 -0
- package/src/modules/attachments/lib/requestScope.ts +27 -0
- package/src/modules/audit_logs/backend/audit-logs/page.tsx +12 -22
- package/src/modules/auth/api/autologin.ts +100 -0
- package/src/modules/auth/api/users/route.ts +11 -2
- package/src/modules/auth/cli.ts +3 -2
- package/src/modules/auth/lib/autologin.ts +36 -0
- package/src/modules/configs/i18n/de.json +5 -1
- package/src/modules/configs/i18n/en.json +5 -1
- package/src/modules/configs/i18n/es.json +5 -1
- package/src/modules/configs/i18n/pl.json +5 -1
- package/src/modules/configs/lib/upgrade-actions.ts +24 -0
- package/src/modules/customer_accounts/AGENTS.md +8 -6
- package/src/modules/customer_accounts/api/admin/roles/[id]/acl.ts +1 -0
- package/src/modules/customer_accounts/api/admin/roles/[id].ts +17 -3
- package/src/modules/customer_accounts/api/portal/users/[id]/roles.ts +6 -1
- package/src/modules/customer_accounts/api/portal/users-invite.ts +6 -1
- package/src/modules/customer_accounts/services/customerInvitationService.ts +1 -0
- package/src/modules/customer_accounts/services/customerRbacService.ts +9 -2
- package/src/modules/customer_accounts/widgets/injection-table.ts +0 -2
- package/src/modules/customers/backend/customers/companies-v2/[id]/page.tsx +11 -1
- package/src/modules/customers/backend/customers/deals/pipeline/components/ViewTabsRow.tsx +6 -2
- package/src/modules/customers/components/detail/CompanyDetailTabs.tsx +39 -55
- package/src/modules/customers/components/detail/DealDetailTabs.tsx +24 -49
- package/src/modules/customers/components/detail/DetailTabsLayout.tsx +13 -24
- package/src/modules/customers/components/detail/MobilePersonDetail.tsx +25 -31
- package/src/modules/customers/components/detail/PersonDetailTabs.tsx +29 -50
- package/src/modules/customers/components/detail/useDealsAccess.ts +19 -0
- package/src/modules/dashboards/api/roles/widgets/route.ts +22 -3
- package/src/modules/dashboards/api/users/widgets/route.ts +22 -3
- package/src/modules/dashboards/cli.ts +4 -9
- package/src/modules/dashboards/lib/widgetAssignmentScope.ts +18 -0
- package/src/modules/dictionaries/commands/entries.ts +7 -16
- package/src/modules/dictionaries/commands/entry-operations.ts +8 -18
- package/src/modules/dictionaries/commands/factory.ts +8 -2
- package/src/modules/dictionaries/fields/dictionary.tsx +55 -32
- package/src/modules/dictionaries/i18n/de.json +2 -0
- package/src/modules/dictionaries/i18n/en.json +2 -0
- package/src/modules/dictionaries/i18n/es.json +2 -0
- package/src/modules/dictionaries/i18n/pl.json +2 -0
- package/src/modules/directory/utils/organizationScope.ts +36 -2
- package/src/modules/entities/api/records.ts +5 -7
- package/src/modules/entities/backend/entities/system/[entityId]/page.meta.ts +1 -0
- package/src/modules/entities/backend/entities/user/[entityId]/page.meta.ts +1 -0
- package/src/modules/entities/backend/entities/user/[entityId]/page.tsx +51 -49
- package/src/modules/entities/cli.ts +2 -1
- package/src/modules/entities/i18n/de.json +34 -0
- package/src/modules/entities/i18n/en.json +34 -0
- package/src/modules/entities/i18n/es.json +34 -0
- package/src/modules/entities/i18n/pl.json +34 -0
- package/src/modules/feature_toggles/api/check/boolean/route.ts +0 -15
- package/src/modules/feature_toggles/defaults.json +8 -0
- package/src/modules/integrations/backend/integrations/[id]/page.tsx +16 -59
- package/src/modules/payment_gateways/data/entities.ts +39 -0
- package/src/modules/payment_gateways/lib/gateway-service.ts +211 -40
- package/src/modules/payment_gateways/lib/session-idempotency.ts +142 -0
- package/src/modules/payment_gateways/migrations/.snapshot-open-mercato.json +236 -0
- package/src/modules/payment_gateways/migrations/Migration20260709220938_payment_gateways.ts +10 -0
- package/src/modules/planner/backend/planner/availability-rulesets/[id]/page.tsx +14 -20
- package/src/modules/planner/components/AvailabilityRulesEditor.tsx +16 -34
- package/src/modules/query_index/api/status.ts +2 -8
- package/src/modules/resources/backend/resources/resources/[id]/page.tsx +27 -37
- package/src/modules/sales/backend/sales/channels/create/page.meta.ts +3 -0
- package/src/modules/sales/backend/sales/channels/create/page.tsx +7 -0
- package/src/modules/sales/backend/sales/channels/offers/page.meta.ts +3 -0
- package/src/modules/sales/backend/sales/channels/offers/page.tsx +7 -0
- package/src/modules/sales/backend/sales/channels/page.meta.ts +4 -0
- package/src/modules/sales/backend/sales/channels/page.tsx +7 -0
- package/src/modules/sales/backend/sales/documents/[id]/page.tsx +7 -5
- package/src/modules/sales/commands/documents.ts +65 -0
- package/src/modules/sales/commands/returns.ts +2 -32
- package/src/modules/sales/components/SalesChannelsDisabledNotice.tsx +21 -0
- package/src/modules/sales/components/documents/AddressesSection.tsx +6 -2
- package/src/modules/sales/components/documents/ItemsSection.tsx +5 -0
- package/src/modules/sales/components/documents/LineItemDialog.tsx +10 -0
- package/src/modules/sales/components/documents/SalesDocumentForm.tsx +53 -3
- package/src/modules/sales/components/documents/SalesDocumentsTable.tsx +10 -8
- package/src/modules/sales/components/documents/ShipmentDialog.tsx +65 -40
- package/src/modules/sales/components/useSalesChannelsEnabled.ts +59 -0
- package/src/modules/sales/i18n/de.json +5 -0
- package/src/modules/sales/i18n/en.json +5 -0
- package/src/modules/sales/i18n/es.json +5 -0
- package/src/modules/sales/i18n/pl.json +5 -0
- package/src/modules/sales/lib/salesChannelsToggle.ts +26 -0
- package/src/modules/sales/lib/salesChannelsToggleId.ts +1 -0
- package/src/modules/sales/lib/shipments/snapshots.ts +30 -0
- package/src/modules/staff/backend/staff/team-members/[id]/page.tsx +25 -34
- package/src/modules/staff/backend/staff/teams/[id]/edit/page.tsx +11 -17
- package/src/modules/staff/lib/timesheets-projects-ui/SavedViewTabs.tsx +11 -28
- package/src/modules/sync_excel/lib/adapters/customers.ts +20 -22
- package/src/modules/sync_excel/lib/parser.ts +245 -0
- package/src/modules/sync_excel/lib/upload-storage.ts +23 -1
|
@@ -10,6 +10,7 @@ import readline from 'node:readline/promises'
|
|
|
10
10
|
import { stdin as input, stdout as output } from 'node:process'
|
|
11
11
|
import { isTenantDataEncryptionEnabled } from '@open-mercato/shared/lib/encryption/toggles'
|
|
12
12
|
import { parseBooleanToken } from '@open-mercato/shared/lib/boolean'
|
|
13
|
+
import { parseCommaSeparatedList } from '@open-mercato/shared/lib/string'
|
|
13
14
|
import { createKmsService, type KmsService, type TenantDek } from '@open-mercato/shared/lib/encryption/kms'
|
|
14
15
|
import {
|
|
15
16
|
decryptWithAesGcm,
|
|
@@ -193,7 +194,7 @@ const addField: ModuleCli = {
|
|
|
193
194
|
let options: string[] | undefined
|
|
194
195
|
if (kind === 'select') {
|
|
195
196
|
const raw = (args.options as string) || await ask('Options (comma-separated)', 'low,medium,high')
|
|
196
|
-
options = raw
|
|
197
|
+
options = parseCommaSeparatedList(raw)
|
|
197
198
|
}
|
|
198
199
|
let defaultValue: any = undefined
|
|
199
200
|
const defRaw = (args.default as string) ?? (args.defaultValue as string)
|
|
@@ -93,6 +93,7 @@
|
|
|
93
93
|
"entities.customFields.editor.noFieldsets": "Noch keine Feldgruppen definiert. Mit Feldgruppen lassen sich benutzerdefinierte Felder für verschiedene Varianten derselben Entität gruppieren (z. B. Mode- vs. Sportprodukte).",
|
|
94
94
|
"entities.customFields.editor.noGroup": "Keine Gruppe",
|
|
95
95
|
"entities.customFields.editor.noOptionsDefined": "Keine Optionen definiert.",
|
|
96
|
+
"entities.customFields.editor.noParameterPlaceholder": "-",
|
|
96
97
|
"entities.customFields.editor.noValidationRules": "Keine Validierungsregeln definiert.",
|
|
97
98
|
"entities.customFields.editor.optionLabelPlaceholder": "Für Benutzer sichtbare Beschriftung (optional)",
|
|
98
99
|
"entities.customFields.editor.options": "Optionen",
|
|
@@ -118,6 +119,17 @@
|
|
|
118
119
|
"entities.customFields.editor.unassignedFields": "Nicht zugewiesene Felder",
|
|
119
120
|
"entities.customFields.editor.unitsOptional": "Einheiten (optional)",
|
|
120
121
|
"entities.customFields.editor.unitsPlaceholder": "kg, cm usw.",
|
|
122
|
+
"entities.customFields.editor.validation.date": "Datum",
|
|
123
|
+
"entities.customFields.editor.validation.eq": "gleich",
|
|
124
|
+
"entities.customFields.editor.validation.float": "Gleitkommazahl",
|
|
125
|
+
"entities.customFields.editor.validation.gt": "größer als",
|
|
126
|
+
"entities.customFields.editor.validation.gte": "größer oder gleich",
|
|
127
|
+
"entities.customFields.editor.validation.integer": "Ganzzahl",
|
|
128
|
+
"entities.customFields.editor.validation.lt": "kleiner als",
|
|
129
|
+
"entities.customFields.editor.validation.lte": "kleiner oder gleich",
|
|
130
|
+
"entities.customFields.editor.validation.ne": "ungleich",
|
|
131
|
+
"entities.customFields.editor.validation.regex": "Regex",
|
|
132
|
+
"entities.customFields.editor.validation.required": "erforderlich",
|
|
121
133
|
"entities.customFields.editor.validationRules": "Validierungsregeln",
|
|
122
134
|
"entities.customFields.editor.value": "Wert",
|
|
123
135
|
"entities.customFields.editor.valueRequired": "Der Wert ist erforderlich",
|
|
@@ -183,6 +195,28 @@
|
|
|
183
195
|
"entities.nav.systemEntities": "Systementitäten",
|
|
184
196
|
"entities.nav.userEntities": "Benutzerentitäten",
|
|
185
197
|
"entities.nav.userEntities.create": "Entität erstellen",
|
|
198
|
+
"entities.userEntities.edit.errors.deleteEntityFailed": "Entität konnte nicht gelöscht werden",
|
|
199
|
+
"entities.userEntities.edit.errors.invalidEntityDescription": "Die angeforderte Entitäts-ID fehlt oder ist ungültig.",
|
|
200
|
+
"entities.userEntities.edit.errors.invalidEntityId": "Ungültige Entitäts-ID",
|
|
201
|
+
"entities.userEntities.edit.errors.invalidEntityTitle": "Ungültige Entität",
|
|
202
|
+
"entities.userEntities.edit.errors.loadDefinitionsFailed": "Entitätsdefinitionen konnten nicht geladen werden",
|
|
203
|
+
"entities.userEntities.edit.errors.loadFailed": "Laden fehlgeschlagen",
|
|
204
|
+
"entities.userEntities.edit.errors.loadMetadataFailed": "Entitätsmetadaten konnten nicht geladen werden",
|
|
205
|
+
"entities.userEntities.edit.errors.reloadDefinitionsFailed": "Felddefinitionen konnten nicht neu geladen werden",
|
|
206
|
+
"entities.userEntities.edit.errors.restoreFieldFailed": "Feld konnte nicht wiederhergestellt werden",
|
|
207
|
+
"entities.userEntities.edit.errors.saveEntityFailed": "Entität konnte nicht gespeichert werden",
|
|
208
|
+
"entities.userEntities.edit.errors.saveOrderFailed": "Reihenfolge konnte nicht gespeichert werden",
|
|
209
|
+
"entities.userEntities.edit.errors.validationFailed": "Validierung fehlgeschlagen",
|
|
210
|
+
"entities.userEntities.edit.fieldsetTitle": "Feldgruppe bearbeiten: {{name}}",
|
|
211
|
+
"entities.userEntities.edit.flash.entityDeleted": "Entität gelöscht",
|
|
212
|
+
"entities.userEntities.edit.flash.orderSaved": "Reihenfolge gespeichert",
|
|
213
|
+
"entities.userEntities.edit.flash.restoredField": "{{key}} wiederhergestellt",
|
|
214
|
+
"entities.userEntities.edit.groups.definitions": "Felddefinitionen",
|
|
215
|
+
"entities.userEntities.edit.groups.settings": "Entitätseinstellungen",
|
|
216
|
+
"entities.userEntities.edit.orderNotice": "Neu angeordnet - wird beim Verlassen gespeichert",
|
|
217
|
+
"entities.userEntities.edit.pageTitle": "Definitionen bearbeiten",
|
|
218
|
+
"entities.userEntities.edit.showRecords": "Datensätze anzeigen",
|
|
219
|
+
"entities.userEntities.edit.title": "Entität bearbeiten: {{entityId}}",
|
|
186
220
|
"entities.userEntities.errors.entityIdExists": "Entitäts-ID ist bereits vorhanden",
|
|
187
221
|
"entities.userEntities.errors.entityIdRequired": "Entitäts-ID ist erforderlich",
|
|
188
222
|
"entities.userEntities.errors.loadFailed": "Entitäten konnten nicht geladen werden",
|
|
@@ -93,6 +93,7 @@
|
|
|
93
93
|
"entities.customFields.editor.noFieldsets": "No fieldsets defined yet. Fieldsets let you group custom fields for different variants of the same entity (e.g., Fashion vs. Sport products).",
|
|
94
94
|
"entities.customFields.editor.noGroup": "No group",
|
|
95
95
|
"entities.customFields.editor.noOptionsDefined": "No options defined.",
|
|
96
|
+
"entities.customFields.editor.noParameterPlaceholder": "-",
|
|
96
97
|
"entities.customFields.editor.noValidationRules": "No validation rules defined.",
|
|
97
98
|
"entities.customFields.editor.optionLabelPlaceholder": "Label shown to users (optional)",
|
|
98
99
|
"entities.customFields.editor.options": "Options",
|
|
@@ -118,6 +119,17 @@
|
|
|
118
119
|
"entities.customFields.editor.unassignedFields": "Unassigned fields",
|
|
119
120
|
"entities.customFields.editor.unitsOptional": "Units (optional)",
|
|
120
121
|
"entities.customFields.editor.unitsPlaceholder": "kg, cm, etc.",
|
|
122
|
+
"entities.customFields.editor.validation.date": "date",
|
|
123
|
+
"entities.customFields.editor.validation.eq": "eq",
|
|
124
|
+
"entities.customFields.editor.validation.float": "float",
|
|
125
|
+
"entities.customFields.editor.validation.gt": "gt",
|
|
126
|
+
"entities.customFields.editor.validation.gte": "gte",
|
|
127
|
+
"entities.customFields.editor.validation.integer": "integer",
|
|
128
|
+
"entities.customFields.editor.validation.lt": "lt",
|
|
129
|
+
"entities.customFields.editor.validation.lte": "lte",
|
|
130
|
+
"entities.customFields.editor.validation.ne": "ne",
|
|
131
|
+
"entities.customFields.editor.validation.regex": "regex",
|
|
132
|
+
"entities.customFields.editor.validation.required": "required",
|
|
121
133
|
"entities.customFields.editor.validationRules": "Validation rules",
|
|
122
134
|
"entities.customFields.editor.value": "Value",
|
|
123
135
|
"entities.customFields.editor.valueRequired": "Value is required",
|
|
@@ -183,6 +195,28 @@
|
|
|
183
195
|
"entities.nav.systemEntities": "System Entities",
|
|
184
196
|
"entities.nav.userEntities": "User Entities",
|
|
185
197
|
"entities.nav.userEntities.create": "Create Entity",
|
|
198
|
+
"entities.userEntities.edit.errors.deleteEntityFailed": "Failed to delete entity",
|
|
199
|
+
"entities.userEntities.edit.errors.invalidEntityDescription": "The requested entity ID is missing or invalid.",
|
|
200
|
+
"entities.userEntities.edit.errors.invalidEntityId": "Invalid entity ID",
|
|
201
|
+
"entities.userEntities.edit.errors.invalidEntityTitle": "Invalid entity",
|
|
202
|
+
"entities.userEntities.edit.errors.loadDefinitionsFailed": "Failed to load entity definitions",
|
|
203
|
+
"entities.userEntities.edit.errors.loadFailed": "Failed to load",
|
|
204
|
+
"entities.userEntities.edit.errors.loadMetadataFailed": "Failed to load entity metadata",
|
|
205
|
+
"entities.userEntities.edit.errors.reloadDefinitionsFailed": "Failed to reload field definitions",
|
|
206
|
+
"entities.userEntities.edit.errors.restoreFieldFailed": "Failed to restore field",
|
|
207
|
+
"entities.userEntities.edit.errors.saveEntityFailed": "Failed to save entity",
|
|
208
|
+
"entities.userEntities.edit.errors.saveOrderFailed": "Failed to save order",
|
|
209
|
+
"entities.userEntities.edit.errors.validationFailed": "Validation failed",
|
|
210
|
+
"entities.userEntities.edit.fieldsetTitle": "Edit fieldset: {{name}}",
|
|
211
|
+
"entities.userEntities.edit.flash.entityDeleted": "Entity deleted",
|
|
212
|
+
"entities.userEntities.edit.flash.orderSaved": "Order saved",
|
|
213
|
+
"entities.userEntities.edit.flash.restoredField": "Restored {{key}}",
|
|
214
|
+
"entities.userEntities.edit.groups.definitions": "Field Definitions",
|
|
215
|
+
"entities.userEntities.edit.groups.settings": "Entity Settings",
|
|
216
|
+
"entities.userEntities.edit.orderNotice": "Reordered - will auto-save on blur",
|
|
217
|
+
"entities.userEntities.edit.pageTitle": "Edit definitions",
|
|
218
|
+
"entities.userEntities.edit.showRecords": "Show Records",
|
|
219
|
+
"entities.userEntities.edit.title": "Edit Entity: {{entityId}}",
|
|
186
220
|
"entities.userEntities.errors.entityIdExists": "Entity ID already exists",
|
|
187
221
|
"entities.userEntities.errors.entityIdRequired": "Entity ID is required",
|
|
188
222
|
"entities.userEntities.errors.loadFailed": "Failed to load entities",
|
|
@@ -93,6 +93,7 @@
|
|
|
93
93
|
"entities.customFields.editor.noFieldsets": "Aún no se han definido conjuntos de campos. Los conjuntos de campos permiten agrupar campos personalizados para distintas variantes de la misma entidad (p. ej. productos de Moda vs. Deporte).",
|
|
94
94
|
"entities.customFields.editor.noGroup": "Sin grupo",
|
|
95
95
|
"entities.customFields.editor.noOptionsDefined": "No se han definido opciones.",
|
|
96
|
+
"entities.customFields.editor.noParameterPlaceholder": "-",
|
|
96
97
|
"entities.customFields.editor.noValidationRules": "No se han definido reglas de validación.",
|
|
97
98
|
"entities.customFields.editor.optionLabelPlaceholder": "Etiqueta visible para los usuarios (opcional)",
|
|
98
99
|
"entities.customFields.editor.options": "Opciones",
|
|
@@ -118,6 +119,17 @@
|
|
|
118
119
|
"entities.customFields.editor.unassignedFields": "Campos sin asignar",
|
|
119
120
|
"entities.customFields.editor.unitsOptional": "Unidades (opcional)",
|
|
120
121
|
"entities.customFields.editor.unitsPlaceholder": "kg, cm, etc.",
|
|
122
|
+
"entities.customFields.editor.validation.date": "fecha",
|
|
123
|
+
"entities.customFields.editor.validation.eq": "igual",
|
|
124
|
+
"entities.customFields.editor.validation.float": "decimal",
|
|
125
|
+
"entities.customFields.editor.validation.gt": "mayor que",
|
|
126
|
+
"entities.customFields.editor.validation.gte": "mayor o igual",
|
|
127
|
+
"entities.customFields.editor.validation.integer": "entero",
|
|
128
|
+
"entities.customFields.editor.validation.lt": "menor que",
|
|
129
|
+
"entities.customFields.editor.validation.lte": "menor o igual",
|
|
130
|
+
"entities.customFields.editor.validation.ne": "distinto",
|
|
131
|
+
"entities.customFields.editor.validation.regex": "regex",
|
|
132
|
+
"entities.customFields.editor.validation.required": "obligatorio",
|
|
121
133
|
"entities.customFields.editor.validationRules": "Reglas de validación",
|
|
122
134
|
"entities.customFields.editor.value": "Valor",
|
|
123
135
|
"entities.customFields.editor.valueRequired": "El valor es obligatorio",
|
|
@@ -183,6 +195,28 @@
|
|
|
183
195
|
"entities.nav.systemEntities": "Entidades del sistema",
|
|
184
196
|
"entities.nav.userEntities": "Entidades de usuario",
|
|
185
197
|
"entities.nav.userEntities.create": "Crear entidad",
|
|
198
|
+
"entities.userEntities.edit.errors.deleteEntityFailed": "No se pudo eliminar la entidad",
|
|
199
|
+
"entities.userEntities.edit.errors.invalidEntityDescription": "Falta el ID de la entidad solicitada o no es válido.",
|
|
200
|
+
"entities.userEntities.edit.errors.invalidEntityId": "ID de entidad no válido",
|
|
201
|
+
"entities.userEntities.edit.errors.invalidEntityTitle": "Entidad no válida",
|
|
202
|
+
"entities.userEntities.edit.errors.loadDefinitionsFailed": "No se pudieron cargar las definiciones de la entidad",
|
|
203
|
+
"entities.userEntities.edit.errors.loadFailed": "No se pudo cargar",
|
|
204
|
+
"entities.userEntities.edit.errors.loadMetadataFailed": "No se pudieron cargar los metadatos de la entidad",
|
|
205
|
+
"entities.userEntities.edit.errors.reloadDefinitionsFailed": "No se pudieron recargar las definiciones de campos",
|
|
206
|
+
"entities.userEntities.edit.errors.restoreFieldFailed": "No se pudo restaurar el campo",
|
|
207
|
+
"entities.userEntities.edit.errors.saveEntityFailed": "No se pudo guardar la entidad",
|
|
208
|
+
"entities.userEntities.edit.errors.saveOrderFailed": "No se pudo guardar el orden",
|
|
209
|
+
"entities.userEntities.edit.errors.validationFailed": "La validación falló",
|
|
210
|
+
"entities.userEntities.edit.fieldsetTitle": "Editar conjunto: {{name}}",
|
|
211
|
+
"entities.userEntities.edit.flash.entityDeleted": "Entidad eliminada",
|
|
212
|
+
"entities.userEntities.edit.flash.orderSaved": "Orden guardado",
|
|
213
|
+
"entities.userEntities.edit.flash.restoredField": "{{key}} restaurado",
|
|
214
|
+
"entities.userEntities.edit.groups.definitions": "Definiciones de campos",
|
|
215
|
+
"entities.userEntities.edit.groups.settings": "Configuración de la entidad",
|
|
216
|
+
"entities.userEntities.edit.orderNotice": "Reordenado - se guardará al salir del campo",
|
|
217
|
+
"entities.userEntities.edit.pageTitle": "Editar definiciones",
|
|
218
|
+
"entities.userEntities.edit.showRecords": "Mostrar registros",
|
|
219
|
+
"entities.userEntities.edit.title": "Editar entidad: {{entityId}}",
|
|
186
220
|
"entities.userEntities.errors.entityIdExists": "El ID de la entidad ya existe",
|
|
187
221
|
"entities.userEntities.errors.entityIdRequired": "El ID de la entidad es obligatorio",
|
|
188
222
|
"entities.userEntities.errors.loadFailed": "No se pudieron cargar las entidades",
|
|
@@ -93,6 +93,7 @@
|
|
|
93
93
|
"entities.customFields.editor.noFieldsets": "Nie zdefiniowano jeszcze zestawów pól. Zestawy pól pozwalają grupować pola niestandardowe dla różnych wariantów tej samej encji (np. produkty Moda vs Sport).",
|
|
94
94
|
"entities.customFields.editor.noGroup": "Bez grupy",
|
|
95
95
|
"entities.customFields.editor.noOptionsDefined": "Nie zdefiniowano opcji.",
|
|
96
|
+
"entities.customFields.editor.noParameterPlaceholder": "-",
|
|
96
97
|
"entities.customFields.editor.noValidationRules": "Nie zdefiniowano reguł walidacji.",
|
|
97
98
|
"entities.customFields.editor.optionLabelPlaceholder": "Etykieta widoczna dla użytkowników (opcjonalnie)",
|
|
98
99
|
"entities.customFields.editor.options": "Opcje",
|
|
@@ -118,6 +119,17 @@
|
|
|
118
119
|
"entities.customFields.editor.unassignedFields": "Pola nieprzypisane",
|
|
119
120
|
"entities.customFields.editor.unitsOptional": "Jednostki (opcjonalnie)",
|
|
120
121
|
"entities.customFields.editor.unitsPlaceholder": "kg, cm itp.",
|
|
122
|
+
"entities.customFields.editor.validation.date": "data",
|
|
123
|
+
"entities.customFields.editor.validation.eq": "równe",
|
|
124
|
+
"entities.customFields.editor.validation.float": "liczba zmiennoprzecinkowa",
|
|
125
|
+
"entities.customFields.editor.validation.gt": "większe niż",
|
|
126
|
+
"entities.customFields.editor.validation.gte": "większe lub równe",
|
|
127
|
+
"entities.customFields.editor.validation.integer": "liczba całkowita",
|
|
128
|
+
"entities.customFields.editor.validation.lt": "mniejsze niż",
|
|
129
|
+
"entities.customFields.editor.validation.lte": "mniejsze lub równe",
|
|
130
|
+
"entities.customFields.editor.validation.ne": "różne",
|
|
131
|
+
"entities.customFields.editor.validation.regex": "regex",
|
|
132
|
+
"entities.customFields.editor.validation.required": "wymagane",
|
|
121
133
|
"entities.customFields.editor.validationRules": "Reguły walidacji",
|
|
122
134
|
"entities.customFields.editor.value": "Wartość",
|
|
123
135
|
"entities.customFields.editor.valueRequired": "Wartość jest wymagana",
|
|
@@ -183,6 +195,28 @@
|
|
|
183
195
|
"entities.nav.systemEntities": "Encje systemowe",
|
|
184
196
|
"entities.nav.userEntities": "Encje użytkownika",
|
|
185
197
|
"entities.nav.userEntities.create": "Utwórz encję",
|
|
198
|
+
"entities.userEntities.edit.errors.deleteEntityFailed": "Nie udało się usunąć encji",
|
|
199
|
+
"entities.userEntities.edit.errors.invalidEntityDescription": "Brakuje identyfikatora encji albo jest on nieprawidłowy.",
|
|
200
|
+
"entities.userEntities.edit.errors.invalidEntityId": "Nieprawidłowy identyfikator encji",
|
|
201
|
+
"entities.userEntities.edit.errors.invalidEntityTitle": "Nieprawidłowa encja",
|
|
202
|
+
"entities.userEntities.edit.errors.loadDefinitionsFailed": "Nie udało się wczytać definicji encji",
|
|
203
|
+
"entities.userEntities.edit.errors.loadFailed": "Nie udało się wczytać",
|
|
204
|
+
"entities.userEntities.edit.errors.loadMetadataFailed": "Nie udało się wczytać metadanych encji",
|
|
205
|
+
"entities.userEntities.edit.errors.reloadDefinitionsFailed": "Nie udało się ponownie wczytać definicji pól",
|
|
206
|
+
"entities.userEntities.edit.errors.restoreFieldFailed": "Nie udało się przywrócić pola",
|
|
207
|
+
"entities.userEntities.edit.errors.saveEntityFailed": "Nie udało się zapisać encji",
|
|
208
|
+
"entities.userEntities.edit.errors.saveOrderFailed": "Nie udało się zapisać kolejności",
|
|
209
|
+
"entities.userEntities.edit.errors.validationFailed": "Walidacja nie powiodła się",
|
|
210
|
+
"entities.userEntities.edit.fieldsetTitle": "Edytuj zestaw pól: {{name}}",
|
|
211
|
+
"entities.userEntities.edit.flash.entityDeleted": "Encja została usunięta",
|
|
212
|
+
"entities.userEntities.edit.flash.orderSaved": "Kolejność została zapisana",
|
|
213
|
+
"entities.userEntities.edit.flash.restoredField": "Przywrócono {{key}}",
|
|
214
|
+
"entities.userEntities.edit.groups.definitions": "Definicje pól",
|
|
215
|
+
"entities.userEntities.edit.groups.settings": "Ustawienia encji",
|
|
216
|
+
"entities.userEntities.edit.orderNotice": "Zmieniono kolejność - zapisze się po opuszczeniu pola",
|
|
217
|
+
"entities.userEntities.edit.pageTitle": "Edytuj definicje",
|
|
218
|
+
"entities.userEntities.edit.showRecords": "Pokaż rekordy",
|
|
219
|
+
"entities.userEntities.edit.title": "Edytuj encję: {{entityId}}",
|
|
186
220
|
"entities.userEntities.errors.entityIdExists": "Identyfikator encji już istnieje",
|
|
187
221
|
"entities.userEntities.errors.entityIdRequired": "Identyfikator encji jest wymagany",
|
|
188
222
|
"entities.userEntities.errors.loadFailed": "Nie udało się wczytać encji",
|
|
@@ -18,21 +18,6 @@ export async function GET(req: Request) {
|
|
|
18
18
|
return NextResponse.json({ error: 'Missing required parameter: identifier' }, { status: 400 })
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
if (auth.isSuperAdmin === true) {
|
|
22
|
-
return NextResponse.json({
|
|
23
|
-
ok: true,
|
|
24
|
-
value: true,
|
|
25
|
-
resolution: {
|
|
26
|
-
valueType: "boolean",
|
|
27
|
-
value: true,
|
|
28
|
-
source: "override",
|
|
29
|
-
toggleId: "superadmin",
|
|
30
|
-
identifier,
|
|
31
|
-
tenantId: "superadmin"
|
|
32
|
-
}
|
|
33
|
-
})
|
|
34
|
-
}
|
|
35
|
-
|
|
36
21
|
const container = await createRequestContainer()
|
|
37
22
|
const { scope } = await resolveFeatureCheckContext({
|
|
38
23
|
container,
|
|
@@ -16,6 +16,14 @@
|
|
|
16
16
|
"type": "string",
|
|
17
17
|
"defaultValue": "Free shipping on orders over $50"
|
|
18
18
|
},
|
|
19
|
+
{
|
|
20
|
+
"identifier": "sales_channels_enabled",
|
|
21
|
+
"name": "Sales Channels",
|
|
22
|
+
"description": "Show sales channel pickers, filters, and management UI. Disable for tenants that do not use sales channels.",
|
|
23
|
+
"category": "sales",
|
|
24
|
+
"type": "boolean",
|
|
25
|
+
"defaultValue": true
|
|
26
|
+
},
|
|
19
27
|
{
|
|
20
28
|
"identifier": "order_review_threshold",
|
|
21
29
|
"name": "Order Review Threshold",
|
|
@@ -1199,84 +1199,41 @@ export default function IntegrationDetailPage({ params }: IntegrationDetailPageP
|
|
|
1199
1199
|
</section>
|
|
1200
1200
|
) : null}
|
|
1201
1201
|
|
|
1202
|
-
<Tabs value={activeTab} onValueChange={handleTabChange} className="space-y-5">
|
|
1203
|
-
<TabsList className="
|
|
1202
|
+
<Tabs value={activeTab} onValueChange={handleTabChange} variant="underline" className="space-y-5">
|
|
1203
|
+
<TabsList className="w-full overflow-x-auto">
|
|
1204
1204
|
{showCredentialsTab ? (
|
|
1205
|
-
<TabsTrigger
|
|
1206
|
-
|
|
1207
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1208
|
-
>
|
|
1209
|
-
<span className="inline-flex items-center gap-2">
|
|
1210
|
-
<Key className="h-4 w-4" />
|
|
1211
|
-
<span>{t('integrations.detail.tabs.credentials')}</span>
|
|
1212
|
-
</span>
|
|
1205
|
+
<TabsTrigger value="credentials" leading={<Key className="h-4 w-4" />}>
|
|
1206
|
+
{t('integrations.detail.tabs.credentials')}
|
|
1213
1207
|
</TabsTrigger>
|
|
1214
1208
|
) : null}
|
|
1215
1209
|
{leadingInjectedTab ? (
|
|
1216
|
-
<TabsTrigger
|
|
1217
|
-
|
|
1218
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1219
|
-
>
|
|
1220
|
-
<span className="inline-flex items-center gap-2">
|
|
1221
|
-
<Settings className="h-4 w-4" />
|
|
1222
|
-
<span>{leadingInjectedTab.label}</span>
|
|
1223
|
-
</span>
|
|
1210
|
+
<TabsTrigger value={leadingInjectedTab.id} leading={<Settings className="h-4 w-4" />}>
|
|
1211
|
+
{leadingInjectedTab.label}
|
|
1224
1212
|
</TabsTrigger>
|
|
1225
1213
|
) : null}
|
|
1226
1214
|
{showVersionTab ? (
|
|
1227
|
-
<TabsTrigger
|
|
1228
|
-
|
|
1229
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1230
|
-
>
|
|
1231
|
-
<span className="inline-flex items-center gap-2">
|
|
1232
|
-
<RefreshCw className="h-4 w-4" />
|
|
1233
|
-
<span>{t('integrations.detail.tabs.version')}</span>
|
|
1234
|
-
</span>
|
|
1215
|
+
<TabsTrigger value="version" leading={<RefreshCw className="h-4 w-4" />}>
|
|
1216
|
+
{t('integrations.detail.tabs.version')}
|
|
1235
1217
|
</TabsTrigger>
|
|
1236
1218
|
) : null}
|
|
1237
1219
|
{showDataSyncScheduleTab ? (
|
|
1238
|
-
<TabsTrigger
|
|
1239
|
-
|
|
1240
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1241
|
-
>
|
|
1242
|
-
<span className="inline-flex items-center gap-2">
|
|
1243
|
-
<Calendar className="h-4 w-4" />
|
|
1244
|
-
<span>{t('data_sync.integrationTab.title', 'Sync schedules')}</span>
|
|
1245
|
-
</span>
|
|
1220
|
+
<TabsTrigger value="data-sync-schedule" leading={<Calendar className="h-4 w-4" />}>
|
|
1221
|
+
{t('data_sync.integrationTab.title', 'Sync schedules')}
|
|
1246
1222
|
</TabsTrigger>
|
|
1247
1223
|
) : null}
|
|
1248
1224
|
{showHealthTab ? (
|
|
1249
|
-
<TabsTrigger
|
|
1250
|
-
|
|
1251
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1252
|
-
>
|
|
1253
|
-
<span className="inline-flex items-center gap-2">
|
|
1254
|
-
<Activity className="h-4 w-4" />
|
|
1255
|
-
<span>{t('integrations.detail.tabs.health')}</span>
|
|
1256
|
-
</span>
|
|
1225
|
+
<TabsTrigger value="health" leading={<Activity className="h-4 w-4" />}>
|
|
1226
|
+
{t('integrations.detail.tabs.health')}
|
|
1257
1227
|
</TabsTrigger>
|
|
1258
1228
|
) : null}
|
|
1259
1229
|
{showLogsTab ? (
|
|
1260
|
-
<TabsTrigger
|
|
1261
|
-
|
|
1262
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1263
|
-
>
|
|
1264
|
-
<span className="inline-flex items-center gap-2">
|
|
1265
|
-
<FileText className="h-4 w-4" />
|
|
1266
|
-
<span>{t('integrations.detail.tabs.logs')}</span>
|
|
1267
|
-
</span>
|
|
1230
|
+
<TabsTrigger value="logs" leading={<FileText className="h-4 w-4" />}>
|
|
1231
|
+
{t('integrations.detail.tabs.logs')}
|
|
1268
1232
|
</TabsTrigger>
|
|
1269
1233
|
) : null}
|
|
1270
1234
|
{trailingInjectedTabs.map((tab) => (
|
|
1271
|
-
<TabsTrigger
|
|
1272
|
-
|
|
1273
|
-
value={tab.id}
|
|
1274
|
-
className="mr-8 h-auto rounded-none border-b-2 border-transparent bg-transparent px-0 py-2.5 text-sm font-medium text-muted-foreground shadow-none transition-colors hover:bg-transparent hover:text-foreground aria-selected:border-accent-indigo aria-selected:bg-transparent aria-selected:text-foreground aria-selected:shadow-none last:mr-0"
|
|
1275
|
-
>
|
|
1276
|
-
<span className="inline-flex items-center gap-2">
|
|
1277
|
-
<Settings className="h-4 w-4" />
|
|
1278
|
-
<span>{tab.label}</span>
|
|
1279
|
-
</span>
|
|
1235
|
+
<TabsTrigger key={tab.id} value={tab.id} leading={<Settings className="h-4 w-4" />}>
|
|
1236
|
+
{tab.label}
|
|
1280
1237
|
</TabsTrigger>
|
|
1281
1238
|
))}
|
|
1282
1239
|
</TabsList>
|
|
@@ -75,6 +75,45 @@ export class GatewayTransaction {
|
|
|
75
75
|
deletedAt?: Date | null
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
+
@Entity({ tableName: 'gateway_session_initializations' })
|
|
79
|
+
@Unique({
|
|
80
|
+
name: 'gateway_session_initializations_scope_operation_unique',
|
|
81
|
+
properties: ['operationKey', 'providerKey', 'organizationId', 'tenantId'],
|
|
82
|
+
})
|
|
83
|
+
export class GatewaySessionInitialization {
|
|
84
|
+
[OptionalProps]?: 'claimToken' | 'claimedAt' | 'gatewayTransactionId' | 'createdAt' | 'updatedAt'
|
|
85
|
+
|
|
86
|
+
@PrimaryKey({ type: 'uuid', defaultRaw: 'gen_random_uuid()' })
|
|
87
|
+
id!: string
|
|
88
|
+
|
|
89
|
+
@Property({ name: 'operation_key', type: 'text' })
|
|
90
|
+
operationKey!: string
|
|
91
|
+
|
|
92
|
+
@Property({ name: 'provider_key', type: 'text' })
|
|
93
|
+
providerKey!: string
|
|
94
|
+
|
|
95
|
+
@Property({ name: 'claim_token', type: 'uuid', nullable: true })
|
|
96
|
+
claimToken?: string | null
|
|
97
|
+
|
|
98
|
+
@Property({ name: 'claimed_at', type: Date, nullable: true })
|
|
99
|
+
claimedAt?: Date | null
|
|
100
|
+
|
|
101
|
+
@Property({ name: 'gateway_transaction_id', type: 'uuid', nullable: true })
|
|
102
|
+
gatewayTransactionId?: string | null
|
|
103
|
+
|
|
104
|
+
@Property({ name: 'organization_id', type: 'uuid' })
|
|
105
|
+
organizationId!: string
|
|
106
|
+
|
|
107
|
+
@Property({ name: 'tenant_id', type: 'uuid' })
|
|
108
|
+
tenantId!: string
|
|
109
|
+
|
|
110
|
+
@Property({ name: 'created_at', type: Date, onCreate: () => new Date() })
|
|
111
|
+
createdAt: Date = new Date()
|
|
112
|
+
|
|
113
|
+
@Property({ name: 'updated_at', type: Date, onCreate: () => new Date(), onUpdate: () => new Date() })
|
|
114
|
+
updatedAt: Date = new Date()
|
|
115
|
+
}
|
|
116
|
+
|
|
78
117
|
@Entity({ tableName: 'gateway_webhook_events' })
|
|
79
118
|
@Unique({
|
|
80
119
|
name: 'gateway_webhook_events_idempotency_unique',
|