@nexusclawhq/cli 0.3.48 → 0.3.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-info.json +4 -4
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/workforce-bundle-inventory.js +34 -2
- package/dist/nexus-cli/node_modules/@nexusclaw/code-authoring/dist/package/workforce-bundle-inventory.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/cli-contract.types.d.ts +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/employee-eval-cases.types.d.ts +96 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/employee-eval-cases.types.js +125 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/employee-eval-cases.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/index.d.ts +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/index.js +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/index.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/training-evidence-export.constants.d.ts +9 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/training-evidence-export.constants.js +13 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/training-evidence-export.constants.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/training-evidence-export.types.d.ts +285 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/training-evidence-export.types.js +204 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/training-evidence-export.types.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/agent-executable-assets/workforce-bundle.types.d.ts +6 -2
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.d.ts +3 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.js +13 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.d.ts +628 -5
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js +615 -22
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.d.ts +1280 -10
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.d.ts +652 -5
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js +934 -317
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.js +12 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.js.map +1 -1
- package/dist/nexus-cli/src/commands/ai/help.test.js +5 -4
- package/dist/nexus-cli/src/commands/ai/help.test.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/deploy.d.ts +21 -0
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js +56 -320
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/deploy.js +101 -0
- package/dist/nexus-cli/src/commands/employee/deploy.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/index.js +2 -0
- package/dist/nexus-cli/src/commands/employee/index.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/training-evidence.d.ts +2 -0
- package/dist/nexus-cli/src/commands/employee/training-evidence.js +43 -0
- package/dist/nexus-cli/src/commands/employee/training-evidence.js.map +1 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.d.ts +8 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.js +33 -2
- package/dist/nexus-cli/src/commands/org/login-jwt.js.map +1 -1
- package/dist/nexus-cli/src/commands/org/login-jwt.test.js +20 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.test.js.map +1 -1
- package/dist/nexus-cli/src/commands/org/login-web.js +23 -9
- package/dist/nexus-cli/src/commands/org/login-web.js.map +1 -1
- package/dist/nexus-cli/src/commands/workforce/cognition.js +28 -1
- package/dist/nexus-cli/src/commands/workforce/cognition.js.map +1 -1
- package/dist/nexus-cli/src/commands/workforce/task.js +6 -0
- package/dist/nexus-cli/src/commands/workforce/task.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-contract-coverage-baseline.json +12 -0
- package/dist/nexus-cli/src/contracts/command-contract-matrix.generated.test.js +6 -7
- package/dist/nexus-cli/src/contracts/command-contract-matrix.generated.test.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-contract-matrix.scenarios.js +2 -2
- package/dist/nexus-cli/src/contracts/command-contract.guard.js +5 -0
- package/dist/nexus-cli/src/contracts/command-contract.guard.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-contract.registry.js +26 -0
- package/dist/nexus-cli/src/contracts/command-contract.registry.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-inventory.test.js +4 -4
- package/dist/nexus-cli/src/contracts/command-order.js +1 -0
- package/dist/nexus-cli/src/contracts/command-order.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-policy.exporter.test.js +2 -2
- package/dist/nexus-cli/src/contracts/command-policy.registry.js +1 -1
- package/dist/nexus-cli/src/contracts/command-policy.registry.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-policy.registry.test.js +5 -5
- package/dist/nexus-cli/src/contracts/command-policy.validator.test.js +3 -3
- package/dist/nexus-cli/src/contracts/contracts.test.js +17 -0
- package/dist/nexus-cli/src/contracts/contracts.test.js.map +1 -1
- package/dist/nexus-cli/src/contracts/workforce-contracts.js +1 -0
- package/dist/nexus-cli/src/contracts/workforce-contracts.js.map +1 -1
- package/dist/nexus-cli/src/services/api-client.d.ts +8 -0
- package/dist/nexus-cli/src/services/api-client.js +54 -0
- package/dist/nexus-cli/src/services/api-client.js.map +1 -1
- package/dist/nexus-cli/src/services/training-evidence-export.d.ts +15 -0
- package/dist/nexus-cli/src/services/training-evidence-export.js +94 -0
- package/dist/nexus-cli/src/services/training-evidence-export.js.map +1 -0
- package/dist/nexus-cli/src/services/training-evidence-export.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/training-evidence-export.test.js +59 -0
- package/dist/nexus-cli/src/services/training-evidence-export.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-bundle-local.js +26 -4
- package/dist/nexus-cli/src/services/workforce-bundle-local.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-bundle-local.test.js +29 -0
- package/dist/nexus-cli/src/services/workforce-bundle-local.test.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-bundle-remote.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-cognition-remote.d.ts +17 -0
- package/dist/nexus-cli/src/services/workforce-cognition-remote.js +16 -0
- package/dist/nexus-cli/src/services/workforce-cognition-remote.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-conversation-remote.d.ts +5 -0
- package/dist/nexus-cli/src/services/workforce-conversation-remote.js +21 -2
- package/dist/nexus-cli/src/services/workforce-conversation-remote.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-conversation-remote.test.js +2 -0
- package/dist/nexus-cli/src/services/workforce-conversation-remote.test.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.js +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.test.js +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -37,6 +37,84 @@ const messages = {
|
|
|
37
37
|
finish: "Done",
|
|
38
38
|
unselected: "Not selected",
|
|
39
39
|
},
|
|
40
|
+
builder: {
|
|
41
|
+
labelPlaceholder: "Label",
|
|
42
|
+
apiNamePlaceholder: "API Name",
|
|
43
|
+
flowType: "Flow Type",
|
|
44
|
+
selectObject: "Select Object",
|
|
45
|
+
object: "Object",
|
|
46
|
+
configureTrigger: "Configure Trigger",
|
|
47
|
+
triggerCreated: "A record is created",
|
|
48
|
+
triggerUpdated: "A record is updated",
|
|
49
|
+
triggerCreatedOrUpdated: "A record is created or updated",
|
|
50
|
+
triggerDeleted: "A record is deleted",
|
|
51
|
+
setEntryConditions: "Set Entry Conditions",
|
|
52
|
+
conditionRequirements: "Condition Requirements",
|
|
53
|
+
conditions: "Conditions",
|
|
54
|
+
optimizeFlow: "Optimize Flow",
|
|
55
|
+
scheduleSettings: "Schedule Settings",
|
|
56
|
+
frequency: "Frequency",
|
|
57
|
+
startDate: "Start Date",
|
|
58
|
+
startTime: "Start Time",
|
|
59
|
+
platformEvent: "Platform Event",
|
|
60
|
+
eventApiName: "Event API Name",
|
|
61
|
+
screenEntry: "Screen Entry",
|
|
62
|
+
entryMode: "Entry Mode",
|
|
63
|
+
designerNotes: "Designer Notes",
|
|
64
|
+
action: "Action",
|
|
65
|
+
howToSetFieldValues: "How to Set Record Field Values",
|
|
66
|
+
setFieldValuesManually: "Set field values manually",
|
|
67
|
+
useVariablesAndFormulas: "Use variables and formulas",
|
|
68
|
+
fieldMappingsReady: "Field Mappings Ready",
|
|
69
|
+
recordOrRecordId: "Record or Record ID",
|
|
70
|
+
setFieldValues: "Set Field Values",
|
|
71
|
+
pauseType: "Pause Type",
|
|
72
|
+
timeSource: "Time Source",
|
|
73
|
+
offsetNumberOptions: "Offset Number / Offset Options",
|
|
74
|
+
scheduleSummary: "Schedule Summary",
|
|
75
|
+
defaultOutcome: "Default Outcome",
|
|
76
|
+
outcomeOrder: "Outcome Order",
|
|
77
|
+
toolbox: "Toolbox",
|
|
78
|
+
searchThisFlow: "Search this flow...",
|
|
79
|
+
closeInspector: "Close inspector",
|
|
80
|
+
debugData: "Debug Data",
|
|
81
|
+
daysAfterSource: "{days} days after {source}",
|
|
82
|
+
durationAfterSource: "{value} {unit} after {source}",
|
|
83
|
+
durationOnly: "{value} {unit}",
|
|
84
|
+
pauseUntilDate: "pause until {date}",
|
|
85
|
+
pauseUntilEvent: "pause until {object} {event}",
|
|
86
|
+
unitMinutes: "minutes",
|
|
87
|
+
unitHours: "hours",
|
|
88
|
+
unitDays: "days",
|
|
89
|
+
timeSourceCloseDate: "close date",
|
|
90
|
+
optimizationFastFieldUpdates: "Fast Field Updates",
|
|
91
|
+
optimizationActionsAndRelatedRecords: "Actions and Related Records",
|
|
92
|
+
scheduleDaily: "Every day",
|
|
93
|
+
scheduleWeekly: "Every week",
|
|
94
|
+
scheduleOnce: "Run once",
|
|
95
|
+
entryAppPage: "App page",
|
|
96
|
+
entryQuickAction: "Quick action",
|
|
97
|
+
entryUtilityBar: "Utility bar",
|
|
98
|
+
summaryTrigger: "Trigger",
|
|
99
|
+
summaryOptimizeFor: "Optimize for",
|
|
100
|
+
summarySchedule: "Schedule",
|
|
101
|
+
summaryStartAt: "Start at",
|
|
102
|
+
summaryEvent: "Event",
|
|
103
|
+
summaryRunType: "Run type",
|
|
104
|
+
summaryEntry: "Entry",
|
|
105
|
+
summaryInteraction: "Interaction",
|
|
106
|
+
summaryInvocation: "Invocation",
|
|
107
|
+
summaryStatus: "Status",
|
|
108
|
+
notSet: "Not set",
|
|
109
|
+
platformEventReceived: "When a platform event is received",
|
|
110
|
+
runTypeAutolaunched: "Autolaunched flow",
|
|
111
|
+
guidedScreenExperience: "Guided screen experience",
|
|
112
|
+
runTypeUserFacing: "User-facing flow",
|
|
113
|
+
invokedByFlowsActionsAi: "Called by flows, actions, or AI",
|
|
114
|
+
noExplicitTrigger: "No explicit trigger",
|
|
115
|
+
runTypeBackground: "Background automation",
|
|
116
|
+
selectFlowTypeToConfigureStart: "Select a flow type to configure Start",
|
|
117
|
+
},
|
|
40
118
|
flowType: {
|
|
41
119
|
unselected: "No type selected",
|
|
42
120
|
recordTriggered: {
|
|
@@ -359,6 +437,16 @@ const messages = {
|
|
|
359
437
|
breadcrumbAi: "AI Settings",
|
|
360
438
|
breadcrumbAgents: "Agent Management",
|
|
361
439
|
breadcrumbConfigure: "Configure",
|
|
440
|
+
fieldNamePlaceholder: "e.g. SalesAgent",
|
|
441
|
+
fieldIconPlaceholder: "icon name",
|
|
442
|
+
typeSales: "Sales",
|
|
443
|
+
typeService: "Service",
|
|
444
|
+
typeAnalytics: "Analytics",
|
|
445
|
+
typeAdmin: "Admin",
|
|
446
|
+
typeCustom: "Custom",
|
|
447
|
+
modelTier1: "DeepSeek V3 (Tier 1)",
|
|
448
|
+
modelTier2: "GPT-4o (Tier 2)",
|
|
449
|
+
modelTier3: "Claude Opus (Tier 3)",
|
|
362
450
|
breadcrumbExecutionLogs: "Execution Logs",
|
|
363
451
|
breadcrumbExecutionDetail: "Details",
|
|
364
452
|
listTitle: "Agent Runtime & Governance",
|
|
@@ -848,11 +936,20 @@ const messages = {
|
|
|
848
936
|
app: {
|
|
849
937
|
restoringSession: "Restoring session...",
|
|
850
938
|
enteringSystem: "Entering...",
|
|
939
|
+
crm: "CRM",
|
|
940
|
+
marketing: "Marketing",
|
|
941
|
+
service: "Service",
|
|
851
942
|
partner: "Partner",
|
|
852
|
-
platform: "Platform"
|
|
943
|
+
platform: "Platform",
|
|
944
|
+
settings: "Settings"
|
|
853
945
|
},
|
|
854
946
|
appDescription: {
|
|
855
|
-
|
|
947
|
+
crm: "Customer Relationship Management",
|
|
948
|
+
marketing: "Marketing Automation & Campaign Management",
|
|
949
|
+
service: "Customer Service Management",
|
|
950
|
+
partner: "Partner Relationship Management",
|
|
951
|
+
platform: "Open Platform & Ecosystem",
|
|
952
|
+
settings: "System Settings"
|
|
856
953
|
},
|
|
857
954
|
common: {
|
|
858
955
|
featureNotAvailable: "This feature is not available yet",
|
|
@@ -924,6 +1021,7 @@ const messages = {
|
|
|
924
1021
|
contactAll: "All Contacts",
|
|
925
1022
|
salesFolder: "Sales",
|
|
926
1023
|
salesOpportunity: "Opportunities",
|
|
1024
|
+
forecastCenter: "Forecast Center",
|
|
927
1025
|
cpqFolder: "CPQ",
|
|
928
1026
|
cpqProduct: "Product Catalog",
|
|
929
1027
|
cpqPriceBook: "Price Books",
|
|
@@ -1897,7 +1995,7 @@ const messages = {
|
|
|
1897
1995
|
usage: "Usage",
|
|
1898
1996
|
usageDetails: "Usage Details",
|
|
1899
1997
|
noUsageData: "No usage data",
|
|
1900
|
-
upgradePlan: "Plan
|
|
1998
|
+
upgradePlan: "Plan Capabilities",
|
|
1901
1999
|
current: "Current",
|
|
1902
2000
|
perMonth: "/mo",
|
|
1903
2001
|
perYear: "/yr",
|
|
@@ -2012,9 +2110,23 @@ const messages = {
|
|
|
2012
2110
|
cancelWarningItem2: "Advanced governance and budget controls will be disabled",
|
|
2013
2111
|
cancelWarningItem3: "Usage beyond base allowances will need to be reconfigured",
|
|
2014
2112
|
cancelWarningItem4: "You can re-enable a paid resource pack at any time",
|
|
2015
|
-
planCycleCaption: "
|
|
2113
|
+
planCycleCaption: "Platform pricing and promotions are managed centrally by platform operations.",
|
|
2114
|
+
quoteRequired: "Commercial quote required",
|
|
2115
|
+
quoteRequiredDesc: "Contact Sales for a formal quote scoped only to your organization before upgrading or renewing.",
|
|
2016
2116
|
loadFailed: "Failed to load data",
|
|
2017
2117
|
loadFailedDesc: "Unable to fetch billing data, please try again later",
|
|
2118
|
+
opsPlanHealth: "Plan health",
|
|
2119
|
+
opsQuotaRisk: "Quota risk",
|
|
2120
|
+
opsPendingInvoice: "Outstanding invoices",
|
|
2121
|
+
opsNextActions: "Next steps",
|
|
2122
|
+
opsCycleProgress: "Cycle progress",
|
|
2123
|
+
opsDaysUntilNextBill: "Next bill in {count} days",
|
|
2124
|
+
opsBillDueToday: "Billing due today",
|
|
2125
|
+
opsQuotaHealthy: "Healthy",
|
|
2126
|
+
opsInvoiceDegraded: "Invoice data is temporarily unavailable; other billing info is shown normally.",
|
|
2127
|
+
opsActionViewUsage: "Usage dashboard",
|
|
2128
|
+
opsActionSmartCap: "Configure Smart Cap",
|
|
2129
|
+
opsActionContactSales: "Contact sales",
|
|
2018
2130
|
enterpriseQuotaSaveSuccess: "__EN_TODO__: Enterprise 自定义配额已保存",
|
|
2019
2131
|
enterpriseQuotaSaveFailed: "__EN_TODO__: Enterprise 自定义配额保存失败",
|
|
2020
2132
|
enterpriseQuotaConfigTitle: "__EN_TODO__: Enterprise 自定义配额",
|
|
@@ -2734,6 +2846,16 @@ const messages = {
|
|
|
2734
2846
|
},
|
|
2735
2847
|
developer: {
|
|
2736
2848
|
apiCredentials: "API Credentials",
|
|
2849
|
+
pluginSubmit: {
|
|
2850
|
+
pluginNameLabel: "Plugin Name (kebab-case)",
|
|
2851
|
+
displayNameLabel: "Display Name",
|
|
2852
|
+
versionLabel: "Version (semver)",
|
|
2853
|
+
descriptionLabel: "Description",
|
|
2854
|
+
authorLabel: "Author",
|
|
2855
|
+
categoryLabel: "Category",
|
|
2856
|
+
permissionsLabel: "Permissions (comma-separated)",
|
|
2857
|
+
sourceBundleUrlLabel: "Source Bundle URL",
|
|
2858
|
+
},
|
|
2737
2859
|
credentialsUnavailable: "API credentials are not yet available",
|
|
2738
2860
|
credentialsUnavailableReason: "A future release will surface your API key and secret here along with a regenerate action. No credentials are stored locally.",
|
|
2739
2861
|
dashboard: "Developer Dashboard",
|
|
@@ -2948,15 +3070,68 @@ const messages = {
|
|
|
2948
3070
|
},
|
|
2949
3071
|
namedCredentials: {
|
|
2950
3072
|
title: "Named Credentials",
|
|
3073
|
+
rotate: "Rotate",
|
|
3074
|
+
detailName: "Name:",
|
|
3075
|
+
detailType: "Type:",
|
|
3076
|
+
detailStatus: "Status:",
|
|
3077
|
+
detailEndpoint: "Endpoint:",
|
|
3078
|
+
detailDescription: "Description:",
|
|
3079
|
+
detailCreatedBy: "Created By:",
|
|
3080
|
+
detailLastUsed: "Last Used:",
|
|
3081
|
+
neverUsed: "Never",
|
|
3082
|
+
noConfigurationData: "No configuration data",
|
|
3083
|
+
selectCredentialForAudit: "Select a credential to view audit logs",
|
|
3084
|
+
tokenUrl: "Token URL",
|
|
3085
|
+
clientId: "Client ID",
|
|
3086
|
+
clientSecret: "Client Secret",
|
|
3087
|
+
scopes: "Scopes",
|
|
3088
|
+
apiKey: "API Key",
|
|
3089
|
+
headerName: "Header Name",
|
|
3090
|
+
username: "Username",
|
|
3091
|
+
password: "Password",
|
|
3092
|
+
certificate: "Certificate",
|
|
3093
|
+
privateKey: "Private Key",
|
|
3094
|
+
deleteConfirmTitle: "Delete this credential?",
|
|
3095
|
+
filterByType: "Filter by type",
|
|
3096
|
+
nameLabel: "Name",
|
|
3097
|
+
descriptionLabel: "Description",
|
|
3098
|
+
endpointUrl: "Endpoint URL",
|
|
3099
|
+
credentialType: "Credential Type",
|
|
3100
|
+
selectType: "Select type",
|
|
3101
|
+
newApiKey: "New API Key",
|
|
3102
|
+
enterNewApiKey: "Enter new API key",
|
|
3103
|
+
basicInfo: "Basic Info",
|
|
3104
|
+
configurationMasked: "Configuration (Masked)",
|
|
3105
|
+
selectCredential: "Select credential",
|
|
3106
|
+
createdMsg: "Credential created",
|
|
3107
|
+
updatedMsg: "Credential updated",
|
|
3108
|
+
deletedMsg: "Credential deleted",
|
|
3109
|
+
rotatedMsg: "API Key rotated",
|
|
2951
3110
|
},
|
|
2952
3111
|
oauth2: {
|
|
2953
3112
|
clients: "OAuth2 Clients",
|
|
2954
3113
|
createApp: "Create App",
|
|
3114
|
+
clientIdLabel: "Client ID:",
|
|
3115
|
+
clientSecretLabel: "Client Secret:",
|
|
3116
|
+
secretSaveNowHint: "Please save the secret now. It won't be shown again.",
|
|
3117
|
+
appNameLabel: "Application Name",
|
|
3118
|
+
descriptionLabel: "Description",
|
|
3119
|
+
redirectUrisLabel: "Redirect URIs (one per line)",
|
|
3120
|
+
allowedScopesLabel: "Allowed Scopes",
|
|
3121
|
+
copied: "Copied",
|
|
3122
|
+
clientCreatedTitle: "Client Created",
|
|
2955
3123
|
},
|
|
2956
3124
|
plugins: {
|
|
2957
3125
|
configSaved: "Configuration Saved",
|
|
2958
3126
|
configuration: "Configuration",
|
|
2959
3127
|
details: "Details",
|
|
3128
|
+
installationIdLabel: "Installation ID",
|
|
3129
|
+
pluginIdLabel: "Plugin ID",
|
|
3130
|
+
versionLabel: "Version",
|
|
3131
|
+
configJsonLabel: "Config (JSON)",
|
|
3132
|
+
targetVersionPlaceholder: "Target Version ID",
|
|
3133
|
+
rollbackConfirmTitle: "Rollback to this version?",
|
|
3134
|
+
invalidJson: "Invalid JSON",
|
|
2960
3135
|
permissions: "Permissions",
|
|
2961
3136
|
rollback: "Rollback",
|
|
2962
3137
|
rolledBack: "Rolled Back",
|
|
@@ -2978,6 +3153,29 @@ const messages = {
|
|
|
2978
3153
|
title: "Shield Encryption",
|
|
2979
3154
|
performanceUnavailable: "Performance metrics unavailable",
|
|
2980
3155
|
performanceUnavailableReason: "No production latency aggregate is available for this workspace. Metrics are not fabricated.",
|
|
3156
|
+
deactivate: "Deactivate",
|
|
3157
|
+
jobLabel: "Job:",
|
|
3158
|
+
statusLabel: "Status:",
|
|
3159
|
+
deactivateConfirmTitle: "Deactivate this policy?",
|
|
3160
|
+
createPolicyTitle: "Create Encryption Policy",
|
|
3161
|
+
objectLabel: "Object",
|
|
3162
|
+
objectPlaceholder: "Object Metadata ID",
|
|
3163
|
+
fieldLabel: "Field",
|
|
3164
|
+
fieldPlaceholder: "Field Metadata ID",
|
|
3165
|
+
searchable: "Searchable",
|
|
3166
|
+
statTotalEncryptedFields: "Total Encrypted Fields",
|
|
3167
|
+
statActiveKeys: "Active Keys",
|
|
3168
|
+
statPoliciesWithRecords: "Policies with Records",
|
|
3169
|
+
statEncryptedRecordsPerPolicy: "Encrypted Records per Policy",
|
|
3170
|
+
statPerformanceMetrics: "Performance Metrics",
|
|
3171
|
+
keyHistory: "Key History",
|
|
3172
|
+
rotateConfirmTitle: "Rotate encryption key?",
|
|
3173
|
+
reEncryption: "Re-encryption",
|
|
3174
|
+
selectPolicyToReEncrypt: "Select policy to re-encrypt",
|
|
3175
|
+
policyCreatedMsg: "Encryption policy created",
|
|
3176
|
+
policyDeactivatedMsg: "Policy deactivated",
|
|
3177
|
+
keyRotatedMsg: "Key rotated successfully",
|
|
3178
|
+
reEncryptionTriggeredMsg: "Re-encryption triggered",
|
|
2981
3179
|
},
|
|
2982
3180
|
webhooks: {
|
|
2983
3181
|
dlq: "Dead Letter Queue",
|
|
@@ -3197,6 +3395,12 @@ const messages = {
|
|
|
3197
3395
|
breadcrumbWorkspace: "Workspace",
|
|
3198
3396
|
breadcrumbSecurity: "Security",
|
|
3199
3397
|
breadcrumbNew: "New SSO Provider",
|
|
3398
|
+
entityIdAddon: "Entity ID",
|
|
3399
|
+
namePlaceholder: "Corporate SAML",
|
|
3400
|
+
entityIdLabel: "Entity ID",
|
|
3401
|
+
idpIssuerLabel: "IdP Issuer",
|
|
3402
|
+
idpSsoUrlLabel: "IdP SSO URL",
|
|
3403
|
+
x509CertLabel: "X.509 Certificate",
|
|
3200
3404
|
sectionName: "Name",
|
|
3201
3405
|
sectionNameDesc: "Your connection name",
|
|
3202
3406
|
nameRequired: "Please enter connection name",
|
|
@@ -6932,6 +7136,7 @@ const messages = {
|
|
|
6932
7136
|
editInstruction: "Edit instruction",
|
|
6933
7137
|
evidenceRequired: "Evidence required",
|
|
6934
7138
|
executionHistory: "Execution history",
|
|
7139
|
+
externalConversations: "External channel conversations",
|
|
6935
7140
|
executionIdentity: "Execution identity and authority",
|
|
6936
7141
|
executionSteps: "Execution steps",
|
|
6937
7142
|
executionStepsEmpty: "Waiting for tool call records.",
|
|
@@ -8112,7 +8317,13 @@ const messages = {
|
|
|
8112
8317
|
common: {
|
|
8113
8318
|
cancel: "Cancel",
|
|
8114
8319
|
},
|
|
8320
|
+
readOnlyTag: "Read only",
|
|
8321
|
+
siteCol: "Site",
|
|
8322
|
+
statusCol: "Status",
|
|
8323
|
+
searchLabel: "Search",
|
|
8324
|
+
reassignTitle: "Reassign External Profile",
|
|
8115
8325
|
link: {
|
|
8326
|
+
contactIdUuidLabel: "Contact ID (UUID)",
|
|
8116
8327
|
noResult: "Link failed: the server returned no result",
|
|
8117
8328
|
linked: "Contact linked",
|
|
8118
8329
|
failed: "Link failed",
|
|
@@ -8164,6 +8375,30 @@ const messages = {
|
|
|
8164
8375
|
breadcrumbPlatform: "Platform Tools",
|
|
8165
8376
|
refresh: "Refresh",
|
|
8166
8377
|
status: {
|
|
8378
|
+
conflictedTag: "Conflicted",
|
|
8379
|
+
resolvedTag: "Resolved",
|
|
8380
|
+
noneTag: "None",
|
|
8381
|
+
retry: "Retry",
|
|
8382
|
+
pushAria: "Push source tracking changes to remote",
|
|
8383
|
+
pullAria: "Pull source tracking changes from remote",
|
|
8384
|
+
refreshAria: "Refresh source tracking status",
|
|
8385
|
+
contractNoteAlert: "Current contract note",
|
|
8386
|
+
diffInspectionAlert: "Diff inspection mode",
|
|
8387
|
+
conflictMarkersAlert: "Conflict markers detected in remote content",
|
|
8388
|
+
colFilePath: "File Path",
|
|
8389
|
+
colChangeType: "Change Type",
|
|
8390
|
+
colSource: "Source",
|
|
8391
|
+
colLastModified: "Last Modified",
|
|
8392
|
+
colConflictStatus: "Conflict Status",
|
|
8393
|
+
colActions: "Actions",
|
|
8394
|
+
changeTypeModified: "Modified",
|
|
8395
|
+
changeTypeAdded: "Added",
|
|
8396
|
+
changeTypeDeleted: "Deleted",
|
|
8397
|
+
pullModalTitle: "Pull from Remote",
|
|
8398
|
+
pullOkText: "Pull",
|
|
8399
|
+
pushButton: "Push to Remote",
|
|
8400
|
+
pullButton: "Pull from Remote",
|
|
8401
|
+
lastModifiedPrefix: "Last Modified:",
|
|
8167
8402
|
pushSubmitted: "Push submitted: {path}",
|
|
8168
8403
|
noPushableDeletes: "There are no deletions the status page can push directly; added/modified items still require a local file content contract.",
|
|
8169
8404
|
confirmPushDeletes: "Push {count} deletions to remote? Added/modified items will still not be submitted from the status page.",
|
|
@@ -8183,6 +8418,29 @@ const messages = {
|
|
|
8183
8418
|
unsupportedPull: "Pull-from-remote is now handled by the source-tracking baseline contract.",
|
|
8184
8419
|
},
|
|
8185
8420
|
baseline: {
|
|
8421
|
+
retry: "Retry",
|
|
8422
|
+
historyTitle: "Baseline History",
|
|
8423
|
+
pullFromRemoteAria: "Pull baseline from remote",
|
|
8424
|
+
refreshAria: "Refresh baseline management",
|
|
8425
|
+
resetAria: "Reset source tracking",
|
|
8426
|
+
setBaselineAria: "Set source tracking baseline",
|
|
8427
|
+
contractNoteAlert: "Current contract note",
|
|
8428
|
+
currentBaselineTitle: "Current Baseline",
|
|
8429
|
+
colBaselineId: "Baseline ID",
|
|
8430
|
+
colAvailable: "Available",
|
|
8431
|
+
colRevision: "Revision",
|
|
8432
|
+
colSource: "Source",
|
|
8433
|
+
colAuthor: "Author",
|
|
8434
|
+
colCreatedAt: "Created At",
|
|
8435
|
+
colDescription: "Description",
|
|
8436
|
+
setBaselineTitle: "Set Baseline",
|
|
8437
|
+
setBaselineOk: "Set Baseline",
|
|
8438
|
+
baselineDescriptionLabel: "Baseline description",
|
|
8439
|
+
pullFromRemoteButton: "Pull from Remote",
|
|
8440
|
+
resetTrackingButton: "Reset Tracking",
|
|
8441
|
+
setBaselineButton: "Set Baseline",
|
|
8442
|
+
availableTag: "Available",
|
|
8443
|
+
unavailableTag: "Unavailable",
|
|
8186
8444
|
rebuildSubmitted: "Baseline rebuild request submitted",
|
|
8187
8445
|
setFailed: "Failed to set baseline",
|
|
8188
8446
|
confirmReset: "Reset source tracking status? This clears the current tracking state and realigns the baseline.",
|
|
@@ -8207,6 +8465,25 @@ const messages = {
|
|
|
8207
8465
|
descPlaceholder: "Explain the reason for this baseline rebuild",
|
|
8208
8466
|
},
|
|
8209
8467
|
conflict: {
|
|
8468
|
+
unresolved: "Unresolved",
|
|
8469
|
+
pageTitle: "Conflict Resolution",
|
|
8470
|
+
refreshContentAria: "Refresh conflict content",
|
|
8471
|
+
markResolvedAria: "Mark conflict as resolved",
|
|
8472
|
+
contractNoteAlert: "Current contract note",
|
|
8473
|
+
conflictFileTitle: "Conflict File",
|
|
8474
|
+
selectFileLabel: "Select conflict file",
|
|
8475
|
+
colPath: "Path",
|
|
8476
|
+
colMarkers: "Markers",
|
|
8477
|
+
colResolutionState: "Resolution State",
|
|
8478
|
+
colBackendAction: "Backend Action",
|
|
8479
|
+
sideBySideTitle: "Side-by-Side Inspection",
|
|
8480
|
+
conflictMarkersTitle: "Conflict Markers",
|
|
8481
|
+
breadcrumbSourceTracking: "Source Tracking",
|
|
8482
|
+
breadcrumbConflictResolution: "Conflict Resolution",
|
|
8483
|
+
markResolvedButton: "Mark as Resolved",
|
|
8484
|
+
readyToSubmitTag: "Ready to Submit",
|
|
8485
|
+
pendingSelectionTag: "Pending Selection",
|
|
8486
|
+
resolvedVia: "resolved via {choice}",
|
|
8210
8487
|
resolved: "Conflict resolution written to source-tracking contract",
|
|
8211
8488
|
subtitle: "This page is connected to the conflict packet between baseline/local-side and remote; resolutions are written directly to the source-tracking contract.",
|
|
8212
8489
|
contractNote: "Here the local side is based on the source-tracking baseline, not the browser local file system. Mark as Resolved writes the resolution choice to the backend contract.",
|
|
@@ -8768,6 +9045,14 @@ const messages = {
|
|
|
8768
9045
|
executionLogTitle: "Execution Log",
|
|
8769
9046
|
noExecutionRecords: "No execution records",
|
|
8770
9047
|
executionLogReplay: "Execution Log Replay",
|
|
9048
|
+
stepGuardrail: "Guardrail",
|
|
9049
|
+
stepThought: "Thought",
|
|
9050
|
+
stepAction: "Action",
|
|
9051
|
+
stepObservation: "Observation",
|
|
9052
|
+
labelModel: "Model",
|
|
9053
|
+
labelDuration: "Duration",
|
|
9054
|
+
labelTokens: "Tokens",
|
|
9055
|
+
confidencePercent: "{value}% confidence",
|
|
8771
9056
|
totalSteps: "Total Steps",
|
|
8772
9057
|
totalTokens: "Total Tokens",
|
|
8773
9058
|
totalDuration: "Total Duration",
|
|
@@ -9157,6 +9442,29 @@ const messages = {
|
|
|
9157
9442
|
},
|
|
9158
9443
|
},
|
|
9159
9444
|
deploymentPages: {
|
|
9445
|
+
envProduction: "Production",
|
|
9446
|
+
envDevelopmentSandbox: "Development Sandbox",
|
|
9447
|
+
envTestSandbox: "Test Sandbox",
|
|
9448
|
+
createChangeSetTitle: "Create Change Set",
|
|
9449
|
+
changeSetNameLabel: "Name",
|
|
9450
|
+
changeSetNamePlaceholder: "Enter a change set name",
|
|
9451
|
+
changeSetDescriptionLabel: "Description",
|
|
9452
|
+
changeSetDescriptionPlaceholder: "Enter a description (optional)",
|
|
9453
|
+
sourceEnvFieldLabel: "Source Environment",
|
|
9454
|
+
sourceEnvironmentPlaceholder: "Select a source environment",
|
|
9455
|
+
targetEnvFieldLabel: "Target Environment",
|
|
9456
|
+
targetEnvironmentPlaceholder: "Select a target environment",
|
|
9457
|
+
pageTitle: "Deployment Management",
|
|
9458
|
+
searchChangeSetsPlaceholder: "Search change sets",
|
|
9459
|
+
statusFilterPlaceholder: "Status",
|
|
9460
|
+
changeSetCreated: "Change set created successfully",
|
|
9461
|
+
sandboxLabel: "Sandbox: {name}",
|
|
9462
|
+
nameRequired: "Enter a change set name",
|
|
9463
|
+
sourceRequired: "Select a source environment",
|
|
9464
|
+
targetRequired: "Select a target environment",
|
|
9465
|
+
pageSubtitle: "Promote metadata and configuration between sandboxes and production",
|
|
9466
|
+
deleteTooltip: "Delete",
|
|
9467
|
+
deleteDisabledTooltip: "Change sets that are deploying or already deployed cannot be deleted",
|
|
9160
9468
|
// Common column headers
|
|
9161
9469
|
colName: "Name",
|
|
9162
9470
|
colStatus: "Status",
|
|
@@ -11704,6 +12012,12 @@ const messages = {
|
|
|
11704
12012
|
currentSpend: "Current spend",
|
|
11705
12013
|
monthlyBudget: "Monthly budget",
|
|
11706
12014
|
notConfigured: "Not configured",
|
|
12015
|
+
agentFallbackPrefix: "AI Employee",
|
|
12016
|
+
agentUnknown: "AI Employee (unknown)",
|
|
12017
|
+
setupNoticeBoth: "Monthly budget and AI usage pricing are not configured yet: usage is reported as-is. Configure a budget to enable utilization and cap controls; amounts take effect once a platform admin activates a rate card.",
|
|
12018
|
+
setupNoticeBudget: "Monthly budget is not configured yet: usage is reported as-is. Configure a budget to enable utilization and cap controls.",
|
|
12019
|
+
setupNoticePricing: "AI usage pricing is not configured yet: amounts are shown as ¥0 as-is. Ask a platform admin to configure and activate an AI usage rate card.",
|
|
12020
|
+
setupActionSmartCap: "Configure Smart Cap",
|
|
11707
12021
|
noBudgetConfigured: "No monthly budget configured",
|
|
11708
12022
|
noBudgetConfiguredDescription: "The detail sections below are aggregated from actual usage (tokens and cost). Current spend and projected month-end spend are shown truthfully; configure a budget to display the usage rate and cap controls.",
|
|
11709
12023
|
daysRemaining: "Days remaining",
|
|
@@ -12122,11 +12436,13 @@ const messages = {
|
|
|
12122
12436
|
summaryValue: "Estimated value",
|
|
12123
12437
|
includesOutcomeBilling: "Includes outcome billing",
|
|
12124
12438
|
tokenCostOnly: "Token cost only",
|
|
12439
|
+
billingPrivate: "Platform Admin only",
|
|
12440
|
+
billingPrivateNote: "Platform charge amounts are not published in demos or customer catalogs",
|
|
12125
12441
|
phaseIntentDesc: "Identify the business goal, key entities, and triggering context.",
|
|
12126
12442
|
phaseAgentMatchDesc: "Select the best-fit executing Agent, model, and capability set.",
|
|
12127
12443
|
phaseExecutionDesc: "Invoke tools, write back to CRM, and generate external or internal actions.",
|
|
12128
12444
|
phaseGuardrailDesc: "Validate amount, permissions, approvals, and the attribution chain.",
|
|
12129
|
-
phaseCompleteDesc: "Output results, outcome metrics, and
|
|
12445
|
+
phaseCompleteDesc: "Output results, outcome metrics, and auditable Outcome attribution signals.",
|
|
12130
12446
|
executionChainPreview: "Execution Chain Preview",
|
|
12131
12447
|
waitingExecution: "Waiting to execute",
|
|
12132
12448
|
scenarioSummary: "Scenario Summary",
|
|
@@ -12849,6 +13165,53 @@ const messages = {
|
|
|
12849
13165
|
fieldsSection: "Fields",
|
|
12850
13166
|
functionsSection: "Functions",
|
|
12851
13167
|
},
|
|
13168
|
+
builder: {
|
|
13169
|
+
nullNoInput: "NULL does not require any additional input.",
|
|
13170
|
+
functionName: "Function Name",
|
|
13171
|
+
dateaddQuickSetup: "DATEADD Quick Setup",
|
|
13172
|
+
dateField: "Date Field",
|
|
13173
|
+
offsetAmount: "Offset Amount",
|
|
13174
|
+
offsetUnit: "Offset Unit",
|
|
13175
|
+
ifQuickSetup: "IF Quick Setup",
|
|
13176
|
+
conditionField: "Condition Field",
|
|
13177
|
+
conditionOperator: "Condition Operator",
|
|
13178
|
+
conditionValueType: "Condition Value Type",
|
|
13179
|
+
conditionValue: "Condition Value",
|
|
13180
|
+
returnsNull: "Returns NULL",
|
|
13181
|
+
noArguments: "This function does not take any arguments.",
|
|
13182
|
+
operator: "Operator",
|
|
13183
|
+
left: "Left",
|
|
13184
|
+
right: "Right",
|
|
13185
|
+
stringConcatenation: "String Concatenation (&)",
|
|
13186
|
+
negative: "Negative",
|
|
13187
|
+
constants: "Constants",
|
|
13188
|
+
field: "Field",
|
|
13189
|
+
compareTo: "Compare To",
|
|
13190
|
+
value: "Value",
|
|
13191
|
+
substituteValueType: "Substitute Value Type",
|
|
13192
|
+
substituteValue: "Substitute Value",
|
|
13193
|
+
picklistField: "Picklist Field",
|
|
13194
|
+
picklistValue: "Picklist Value",
|
|
13195
|
+
condition1: "Condition 1",
|
|
13196
|
+
condition2: "Condition 2",
|
|
13197
|
+
formulaPreview: "Formula Preview",
|
|
13198
|
+
placeholderExampleFormula: "For example: isActive = TRUE",
|
|
13199
|
+
placeholderExampleCondition: "For example: annualRevenue > 1000000",
|
|
13200
|
+
placeholderExamplePicklist: "For example: Closed Won",
|
|
13201
|
+
placeholderEnterText: "Enter text",
|
|
13202
|
+
messagePreviewFailed: "Preview evaluation failed.",
|
|
13203
|
+
messagePreviewRequestFailed: "Preview request failed: {error}",
|
|
13204
|
+
messagePicklistConversion: "TEXT(Picklist) Conversion",
|
|
13205
|
+
messagePicklistComparison: "Salesforce-style Picklist Comparison",
|
|
13206
|
+
messageArgCountOutOfRange: "Function argument count is out of range",
|
|
13207
|
+
descIspickval: "Use ISPICKVAL when you want to compare a picklist field against a specific label value.",
|
|
13208
|
+
descNoMatchingFunctions: "No matching functions",
|
|
13209
|
+
descNoMatchingFields: "No matching fields",
|
|
13210
|
+
messageSyntaxPassed: "Syntax check passed.",
|
|
13211
|
+
messageSelectFieldFirst: "Select a field first.",
|
|
13212
|
+
messagePreviewNotConfigured: "Preview is not configured.",
|
|
13213
|
+
messageConditionInserted: "Condition inserted.",
|
|
13214
|
+
},
|
|
12852
13215
|
batchRecalculate: {
|
|
12853
13216
|
title: "Batch Recalculate Formula Field",
|
|
12854
13217
|
skip: "Skip",
|
|
@@ -13159,6 +13522,49 @@ const messages = {
|
|
|
13159
13522
|
leaveCancel: "Stay",
|
|
13160
13523
|
},
|
|
13161
13524
|
recordPageBuilder: {
|
|
13525
|
+
inspector: {
|
|
13526
|
+
sectionTabsContainer: "Tabs Container",
|
|
13527
|
+
sectionTabProperties: "Tab Properties",
|
|
13528
|
+
sectionComponentProperties: "Component Properties",
|
|
13529
|
+
sectionVisibilityRules: "Visibility Rules",
|
|
13530
|
+
sectionCustomLwc: "Custom LWC",
|
|
13531
|
+
sectionCurrentScope: "Current Scope",
|
|
13532
|
+
sectionPageMap: "Page Map",
|
|
13533
|
+
titlePageScope: "Page Scope",
|
|
13534
|
+
labelLabel: "Label",
|
|
13535
|
+
placeholderComponentTitle: "Component title",
|
|
13536
|
+
labelRegion: "Region",
|
|
13537
|
+
labelConditionExpression: "Condition Expression",
|
|
13538
|
+
labelDeviceVisibility: "Device Visibility",
|
|
13539
|
+
labelLayout: "Layout",
|
|
13540
|
+
labelRelatedObjectApiName: "Related Object API Name",
|
|
13541
|
+
placeholderSelectRelatedObject: "Select a related object",
|
|
13542
|
+
labelRelationshipField: "Relationship Field",
|
|
13543
|
+
labelDisplayStyle: "Display Style",
|
|
13544
|
+
labelVisibleFields: "Visible Fields",
|
|
13545
|
+
labelSortField: "Sort Field",
|
|
13546
|
+
labelSortDirection: "Sort Direction",
|
|
13547
|
+
labelPageSize: "Page Size",
|
|
13548
|
+
labelDefaultTitle: "Default Title",
|
|
13549
|
+
labelContent: "Content",
|
|
13550
|
+
labelStageFieldApiName: "Stage Field API Name",
|
|
13551
|
+
labelStages: "Stages",
|
|
13552
|
+
placeholderOneStagePerLine: "One stage per line",
|
|
13553
|
+
placeholderStageExample: "Won",
|
|
13554
|
+
labelCurrentStage: "Current Stage",
|
|
13555
|
+
labelComponent: "Component",
|
|
13556
|
+
labelComponentApiName: "Component API Name",
|
|
13557
|
+
labelBundleUrl: "Bundle URL",
|
|
13558
|
+
labelBundleHash: "Bundle Hash",
|
|
13559
|
+
labelRuntimeStatus: "Runtime Status",
|
|
13560
|
+
okTextApply: "Apply",
|
|
13561
|
+
runtimeShellBadge: "Runtime Shell",
|
|
13562
|
+
componentCountLabel: "Component Count",
|
|
13563
|
+
noSavedPages: "No saved pages yet.",
|
|
13564
|
+
apiNameLabel: "API Name",
|
|
13565
|
+
atLeastOneTab: "At least one tab is required",
|
|
13566
|
+
bundleReadyBadge: "Bundle Ready",
|
|
13567
|
+
},
|
|
13162
13568
|
formError: {
|
|
13163
13569
|
nameRequired: "Please enter a page name",
|
|
13164
13570
|
internalNameRequired: "Please enter an internal name",
|
|
@@ -14029,6 +14435,8 @@ const messages = {
|
|
|
14029
14435
|
},
|
|
14030
14436
|
kanban: {
|
|
14031
14437
|
cancel: "Cancel",
|
|
14438
|
+
cardDueSoon: "Due soon",
|
|
14439
|
+
cardRiskHigh: "High risk",
|
|
14032
14440
|
create: "Create",
|
|
14033
14441
|
loadFailed: "Load Failed",
|
|
14034
14442
|
moveFailed: "Move Failed",
|
|
@@ -14344,6 +14752,16 @@ const messages = {
|
|
|
14344
14752
|
title: "Page Builder",
|
|
14345
14753
|
newPage: "New Page",
|
|
14346
14754
|
edit: "Edit",
|
|
14755
|
+
newPageModal: {
|
|
14756
|
+
title: "New Page",
|
|
14757
|
+
pageNameLabel: "Page Name",
|
|
14758
|
+
apiNameLabel: "API Name",
|
|
14759
|
+
typeLabel: "Type",
|
|
14760
|
+
descriptionLabel: "Description",
|
|
14761
|
+
pageNameRequired: "Page Name is required",
|
|
14762
|
+
apiNameRequired: "API Name is required",
|
|
14763
|
+
apiNamePatternHint: "Use snake_case, starting with a letter",
|
|
14764
|
+
},
|
|
14347
14765
|
createSuccess: "Page created",
|
|
14348
14766
|
pageTypes: {
|
|
14349
14767
|
recordPage: "Record Page",
|
|
@@ -14732,6 +15150,18 @@ const messages = {
|
|
|
14732
15150
|
promotional: "Promotional",
|
|
14733
15151
|
useTemplate: "Use Template",
|
|
14734
15152
|
welcome: "Welcome",
|
|
15153
|
+
templates: {
|
|
15154
|
+
welcomeBasic: { name: "Welcome — Basic", description: "Clean welcome email with greeting and CTA button" },
|
|
15155
|
+
welcomeOnboarding: { name: "Welcome — Onboarding Steps", description: "Onboarding email with step-by-step guide" },
|
|
15156
|
+
promoSale: { name: "Promotional — Flash Sale", description: "Eye-catching promotional email for limited-time offers" },
|
|
15157
|
+
promoProductLaunch: { name: "Promotional — Product Launch", description: "Announce a new product or feature to your audience" },
|
|
15158
|
+
notifyReminder: { name: "Notification — Appointment Reminder", description: "Remind recipients about upcoming appointments or events" },
|
|
15159
|
+
notifyActionRequired: { name: "Notification — Action Required", description: "Alert recipients that an action is needed" },
|
|
15160
|
+
holidaySeason: { name: "Holiday — Season Greetings", description: "Warm holiday greetings for the festive season" },
|
|
15161
|
+
holidayNewYear: { name: "Holiday — New Year", description: "New Year celebration and wishes" },
|
|
15162
|
+
newsletterMonthly: { name: "Newsletter — Monthly Update", description: "Monthly newsletter with multiple content sections" },
|
|
15163
|
+
newsletterWeeklyDigest: { name: "Newsletter — Weekly Digest", description: "Compact weekly digest with top stories" },
|
|
15164
|
+
},
|
|
14735
15165
|
},
|
|
14736
15166
|
territory: {
|
|
14737
15167
|
typesUnavailable: "Territory Types are not yet available",
|
|
@@ -15291,6 +15721,15 @@ const messages = {
|
|
|
15291
15721
|
},
|
|
15292
15722
|
decisionConfig: {
|
|
15293
15723
|
title: "Decision Branch Configuration",
|
|
15724
|
+
outcomeLabel: "Outcome Label",
|
|
15725
|
+
outcomeApiName: "Outcome API Name",
|
|
15726
|
+
colResource: "Resource",
|
|
15727
|
+
colOperator: "Operator",
|
|
15728
|
+
colValue: "Value",
|
|
15729
|
+
defaultBadge: "Default",
|
|
15730
|
+
placeholderResource: "Resource",
|
|
15731
|
+
placeholderValue: "Value",
|
|
15732
|
+
addOutcome: "Add outcome",
|
|
15294
15733
|
description: "Create an Outcome for each automation path, and specify for each Outcome the conditions that must be met to take that path.",
|
|
15295
15734
|
noConditionWarning: "Please configure at least one decision branch, otherwise the flow cannot be activated",
|
|
15296
15735
|
deleteCondition: "Delete condition",
|
|
@@ -16168,6 +16607,9 @@ const messages = {
|
|
|
16168
16607
|
recordList: {
|
|
16169
16608
|
actions: "Actions",
|
|
16170
16609
|
refresh: "Refresh",
|
|
16610
|
+
density: "Row Density",
|
|
16611
|
+
densityCompact: "Compact",
|
|
16612
|
+
densityComfy: "Comfy",
|
|
16171
16613
|
export: "Export",
|
|
16172
16614
|
moreActions: "More Actions",
|
|
16173
16615
|
exportTitle: "Export Current List",
|
|
@@ -16407,6 +16849,7 @@ const messages = {
|
|
|
16407
16849
|
details: "Details",
|
|
16408
16850
|
saveSuccess: "Saved successfully",
|
|
16409
16851
|
saveFailed: "Save failed, please try again later",
|
|
16852
|
+
pathAriaLabel: "Sales path stages",
|
|
16410
16853
|
deleted: "Deleted {object} {name}",
|
|
16411
16854
|
deleteFailed: "Delete failed, please try again later",
|
|
16412
16855
|
deleteUndone: "Delete undone",
|
|
@@ -16690,6 +17133,33 @@ const messages = {
|
|
|
16690
17133
|
rawModeDesc: "The current condition format cannot be parsed by the visual editor. Please edit the JSON directly or try switching to visual mode.",
|
|
16691
17134
|
switchToVisual: "Switch to visual mode",
|
|
16692
17135
|
},
|
|
17136
|
+
flowBuilderCanvas: {
|
|
17137
|
+
undoTitle: "Undo (Ctrl+Z)",
|
|
17138
|
+
redoTitle: "Redo (Ctrl+Shift+Z)",
|
|
17139
|
+
saveTitle: "Save",
|
|
17140
|
+
newVersionTitle: "New Version",
|
|
17141
|
+
activateTitle: "Activate",
|
|
17142
|
+
rollbackTitle: "Rollback",
|
|
17143
|
+
autoLayoutApplied: "Auto-Layout applied",
|
|
17144
|
+
switchedToFreeForm: "Switched to Free-Form",
|
|
17145
|
+
flowSaved: "Flow saved",
|
|
17146
|
+
},
|
|
17147
|
+
workspaceLogo: {
|
|
17148
|
+
uploadButton: "Upload",
|
|
17149
|
+
workspaceIdNotFound: "Workspace id not found",
|
|
17150
|
+
uploadSuccess: "Logo uploaded successfully",
|
|
17151
|
+
uploadFailed: "Failed to upload logo",
|
|
17152
|
+
removeSuccess: "Logo removed successfully",
|
|
17153
|
+
removeFailed: "Failed to remove logo",
|
|
17154
|
+
},
|
|
17155
|
+
reportDesigner: {
|
|
17156
|
+
fieldsTitle: "Fields",
|
|
17157
|
+
columnsLabel: "Columns (drag fields here)",
|
|
17158
|
+
groupByLabel: "Group By",
|
|
17159
|
+
summaryLabel: "Summary (aggregations)",
|
|
17160
|
+
previewTitle: "Preview",
|
|
17161
|
+
configSaved: "Report config saved",
|
|
17162
|
+
},
|
|
16693
17163
|
workflowRulesPage: {
|
|
16694
17164
|
layoutTitle: "Flow / Approvals",
|
|
16695
17165
|
breadcrumbWorkspace: "Workspace",
|
|
@@ -16898,6 +17368,33 @@ const messages = {
|
|
|
16898
17368
|
abortSuccess: "Batch job aborted",
|
|
16899
17369
|
abortError: "Abort failed: {message}",
|
|
16900
17370
|
},
|
|
17371
|
+
platformCommercialPricing: {
|
|
17372
|
+
actionSucceeded: "Action completed",
|
|
17373
|
+
actionFailed: "Action failed. Confirm step-up verification and retry.",
|
|
17374
|
+
catalog: "Commercial Catalog",
|
|
17375
|
+
promotions: "Promotions",
|
|
17376
|
+
agreements: "Customer Agreements",
|
|
17377
|
+
version: "Version",
|
|
17378
|
+
status: "Status",
|
|
17379
|
+
currency: "Currency",
|
|
17380
|
+
effectiveFrom: "Effective From",
|
|
17381
|
+
entries: "Price Entries",
|
|
17382
|
+
actions: "Actions",
|
|
17383
|
+
activate: "Activate",
|
|
17384
|
+
retire: "Retire",
|
|
17385
|
+
suspend: "Suspend",
|
|
17386
|
+
code: "Code",
|
|
17387
|
+
benefit: "Benefit Rule",
|
|
17388
|
+
scope: "Scope",
|
|
17389
|
+
workspace: "Workspace",
|
|
17390
|
+
agreementKey: "Agreement",
|
|
17391
|
+
contractEvidence: "Contract Evidence",
|
|
17392
|
+
overrides: "Contracted Prices",
|
|
17393
|
+
privateNotice: "Platform prices are managed only here. Customers see only their own contracts and formal invoices.",
|
|
17394
|
+
workspaceFilter: "Filter by workspace UUID",
|
|
17395
|
+
loadFailed: "Failed to load",
|
|
17396
|
+
retry: "Retry",
|
|
17397
|
+
},
|
|
16901
17398
|
platformAdmin: {
|
|
16902
17399
|
menuChannelProvider: "Messaging Channels",
|
|
16903
17400
|
adminPanelUi: {
|
|
@@ -17685,6 +18182,9 @@ const messages = {
|
|
|
17685
18182
|
menuOpsSubscriptions: "Subscriptions",
|
|
17686
18183
|
menuOpsHealth: "Tenant Health",
|
|
17687
18184
|
menuOpsBilling: "Billing Overview",
|
|
18185
|
+
menuCommercialCatalog: "Commercial Catalog",
|
|
18186
|
+
menuPromotions: "Promotions",
|
|
18187
|
+
menuCustomerAgreements: "Customer Agreements",
|
|
17688
18188
|
menuOpsRenewals: "Renewals",
|
|
17689
18189
|
menuAiProvider: "AI Provider",
|
|
17690
18190
|
menuDemoAccess: "Demo Access",
|
|
@@ -18616,6 +19116,27 @@ const messages = {
|
|
|
18616
19116
|
REDIRECT_REQUIRED: "Open the owning module to complete the test",
|
|
18617
19117
|
},
|
|
18618
19118
|
connectivityCode: {
|
|
19119
|
+
FEISHU_TOKEN_OK: "Feishu App ID and App Secret are valid, and the token service is reachable",
|
|
19120
|
+
FEISHU_TOKEN_REJECTED: "Feishu rejected the configured App ID or App Secret",
|
|
19121
|
+
FEISHU_MESSAGE_DELIVERY_OK: "Feishu accepted the test message; the target returned HTTP {status}",
|
|
19122
|
+
FEISHU_MESSAGE_DELIVERY_REJECTED: "Feishu rejected the test message; check the chat_id, bot membership, and application permissions",
|
|
19123
|
+
FEISHU_TEST_INPUT_REQUIRED: "Enter both the Feishu chat_id and test content",
|
|
19124
|
+
FEISHU_TEST_INPUT_INVALID: "The chat_id or test content exceeds the allowed length",
|
|
19125
|
+
WECOM_TOKEN_OK: "WeCom application credentials are valid, and the token service is reachable",
|
|
19126
|
+
WECOM_TOKEN_REJECTED: "WeCom rejected the configured application credentials",
|
|
19127
|
+
WECOM_SMART_BOT_CALLBACK_VERIFICATION_REQUIRED: "Token and EncodingAESKey are saved. Save the callback URL in WeCom Smart Bot to complete verification",
|
|
19128
|
+
DINGTALK_TOKEN_OK: "DingTalk AppKey and AppSecret are valid, and the token service is reachable",
|
|
19129
|
+
DINGTALK_STREAM_CREDENTIALS_OK_RUNTIME_PENDING: "DingTalk credentials are valid. Send a real message to the robot to confirm the persistent Stream connection and reply path.",
|
|
19130
|
+
DINGTALK_TOKEN_REJECTED: "DingTalk rejected the configured AppKey or AppSecret",
|
|
19131
|
+
SLACK_CREDENTIALS_OK_ADAPTER_PENDING: "Slack credentials are valid, but the inbound runtime adapter is not connected yet",
|
|
19132
|
+
SLACK_CREDENTIALS_REJECTED: "Slack rejected the configured credentials",
|
|
19133
|
+
TEAMS_CREDENTIALS_OK_ADAPTER_PENDING: "Microsoft Teams credentials are valid, but the inbound runtime adapter is not connected yet",
|
|
19134
|
+
TEAMS_CREDENTIALS_REJECTED: "Microsoft rejected the configured Teams credentials",
|
|
19135
|
+
API_CREDENTIALS_SAVED_CLIENT_TEST_REQUIRED: "API credentials are saved; verify them with a client-originated request",
|
|
19136
|
+
API_CALLBACK_OK: "The API callback is reachable; invocation credentials still require a client test",
|
|
19137
|
+
API_CALLBACK_REJECTED: "The API callback rejected the test request",
|
|
19138
|
+
WEB_CHAT_WIDGET_TEST_REQUIRED: "Complete the end-to-end test in the Web Chat widget",
|
|
19139
|
+
TELEPHONY_TEST_REQUIRED: "Run the telephony provider connection test in Voice settings",
|
|
18619
19140
|
WEBHOOK_DELIVERY_OK: "The test message was delivered successfully; the target returned HTTP {status}",
|
|
18620
19141
|
WEBHOOK_HTTP_REJECTED: "The Webhook target returned HTTP {status} and did not accept the test message",
|
|
18621
19142
|
WEBHOOK_PROVIDER_REJECTED: "The external provider rejected the test message; check the Webhook URL and provider security rules",
|
|
@@ -18625,10 +19146,37 @@ const messages = {
|
|
|
18625
19146
|
TEST_MESSAGE_REQUIRED: "Enter test content before sending",
|
|
18626
19147
|
TEST_MESSAGE_TOO_LONG: "Test content must not exceed 2000 characters",
|
|
18627
19148
|
},
|
|
18628
|
-
webhookTestTitle: "
|
|
18629
|
-
webhookTestDescription: "
|
|
18630
|
-
|
|
18631
|
-
|
|
19149
|
+
webhookTestTitle: "Have a digital employee send a Webhook test message",
|
|
19150
|
+
webhookTestDescription: "Choose an authorized digital employee. The employee generates the test message before the platform delivers it to the saved Webhook URL.",
|
|
19151
|
+
deliveryTestEmployeeLabel: "Digital employee generating the test message",
|
|
19152
|
+
deliveryTestEmployeePlaceholder: "Choose an authorized digital employee",
|
|
19153
|
+
deliveryTestGenerateAndSend: "Generate and send test message",
|
|
19154
|
+
deliveryTestScenarioLabel: "Message scenario",
|
|
19155
|
+
deliveryTestScenario: {
|
|
19156
|
+
welcome: {
|
|
19157
|
+
label: "Welcome message",
|
|
19158
|
+
prompt: "a short, warm welcome for a new customer",
|
|
19159
|
+
},
|
|
19160
|
+
event_reminder: {
|
|
19161
|
+
label: "Event reminder",
|
|
19162
|
+
prompt: "a reminder for an upcoming event with a concise call to action",
|
|
19163
|
+
},
|
|
19164
|
+
service_follow_up: {
|
|
19165
|
+
label: "Service follow-up",
|
|
19166
|
+
prompt: "a warm follow-up after customer service, inviting feedback",
|
|
19167
|
+
},
|
|
19168
|
+
},
|
|
19169
|
+
deliveryTestGenerationPrompt: "Generate a short, professional, natural business message for this scenario: {scenario}. Return only the message body with no explanation. Do not mention testing, Webhooks, or the system.",
|
|
19170
|
+
deliveryTestGenerationFailed: "The digital employee could not generate a test message. Please try again.",
|
|
19171
|
+
sendTestMessage: "Send test message",
|
|
19172
|
+
testCredentials: "Test credentials and platform connection",
|
|
19173
|
+
credentialTestTitle: "Test credentials and platform connection",
|
|
19174
|
+
credentialTestScopeTitle: "This test will not send a group message",
|
|
19175
|
+
credentialTestScopeDescription: "This application channel only verifies platform credentials and the token service. Sending a group message also requires a platform chat ID or recipient ID, which this channel does not currently store.",
|
|
19176
|
+
startCredentialTest: "Start test",
|
|
19177
|
+
feishuMessageTestTitle: "Have a digital employee send a Feishu group test message",
|
|
19178
|
+
feishuMessageTestDescription: "Enter the Feishu group chat_id and choose an authorized digital employee. The employee generates the message before delivery; the app bot must be in the group and have permission to send messages.",
|
|
19179
|
+
feishuChatIdPlaceholder: "Enter the Feishu group chat_id, for example oc_xxxxxxxxx",
|
|
18632
19180
|
toolLabel: {
|
|
18633
19181
|
recordQuery: "Query CRM",
|
|
18634
19182
|
recordAggregate: "Aggregate CRM",
|
|
@@ -18644,22 +19192,22 @@ const messages = {
|
|
|
18644
19192
|
label: "DingTalk",
|
|
18645
19193
|
step1: "Sign in to the DingTalk Open Platform (open-dev.dingtalk.com) and create an enterprise-internal app under \"App Development\".",
|
|
18646
19194
|
step2: "On the \"Credentials & Basic Info\" page, copy the AppKey (Client ID) and AppSecret (Client Secret).",
|
|
18647
|
-
step3: "Enable the
|
|
19195
|
+
step3: "Enable the Robot capability. Choose Stream mode (recommended), or choose Callback and paste the workspace callback URL after saving.",
|
|
18648
19196
|
step4: "Publish the app version, grant it to the organization, then paste the credentials below.",
|
|
18649
19197
|
},
|
|
18650
19198
|
feishu: {
|
|
18651
19199
|
label: "Feishu",
|
|
18652
19200
|
step1: "Sign in to open.feishu.cn and create a custom enterprise app in the Developer Console.",
|
|
18653
19201
|
step2: "On the \"Credentials & Basic Info\" page, copy the App ID and App Secret.",
|
|
18654
|
-
step3: "
|
|
18655
|
-
step4: "
|
|
19202
|
+
step3: "Under Events & Callbacks, choose \"Send events to developer server\", subscribe to message events, and configure the callback URL.",
|
|
19203
|
+
step4: "Copy the Encrypt Key and Verification Token from Encryption Strategy, enter them below, then create and publish an app version.",
|
|
18656
19204
|
},
|
|
18657
19205
|
wecom: {
|
|
18658
|
-
label: "WeCom",
|
|
18659
|
-
step1: "
|
|
18660
|
-
step2: "
|
|
18661
|
-
step3: "
|
|
18662
|
-
note: "
|
|
19206
|
+
label: "WeCom Smart Bot",
|
|
19207
|
+
step1: "Create a Smart Bot in the WeCom admin console, open API Configuration, and choose URL callback mode.",
|
|
19208
|
+
step2: "Enter the Token and EncodingAESKey below, save the channel, then copy the generated callback URL.",
|
|
19209
|
+
step3: "Enter that callback URL and the same Token and EncodingAESKey in WeCom, complete URL verification, and add the Smart Bot to the target group.",
|
|
19210
|
+
note: "This is Smart Bot URL callback mode. CorpId, AgentId, and application Secret are not required. WeCom performs a GET verification when saving.",
|
|
18663
19211
|
},
|
|
18664
19212
|
slack: {
|
|
18665
19213
|
label: "Slack",
|
|
@@ -18700,11 +19248,11 @@ const messages = {
|
|
|
18700
19248
|
field: {
|
|
18701
19249
|
webhook: {
|
|
18702
19250
|
webhookUrl: "Webhook URL",
|
|
19251
|
+
dingtalkSigningSecret: "DingTalk robot signing secret (when signing is enabled)",
|
|
18703
19252
|
},
|
|
18704
19253
|
wecom: {
|
|
18705
|
-
|
|
18706
|
-
|
|
18707
|
-
secret: "Secret",
|
|
19254
|
+
token: "Token",
|
|
19255
|
+
aesKey: "EncodingAESKey",
|
|
18708
19256
|
},
|
|
18709
19257
|
},
|
|
18710
19258
|
simNoReply: "(No reply)",
|
|
@@ -18769,6 +19317,18 @@ const messages = {
|
|
|
18769
19317
|
copyCallbackUrl: "Copy callback URL",
|
|
18770
19318
|
copyCallbackUrlAria: "Copy callback URL",
|
|
18771
19319
|
callbackUrlCopied: "Callback URL copied. Paste it into the message-receive / callback URL field on the open platform.",
|
|
19320
|
+
callbackUrlCopyFailed: "The browser did not allow automatic copying. Retry from an HTTPS page.",
|
|
19321
|
+
connectionModeLabel: "Robot connection mode",
|
|
19322
|
+
connectionMode: {
|
|
19323
|
+
stream: "Stream delivery (recommended)",
|
|
19324
|
+
callback: "Callback URL",
|
|
19325
|
+
streamHelp: "NexusClaw opens a persistent connection to receive messages, so no public callback URL is required. The connection starts and reconnects automatically while the channel is enabled.",
|
|
19326
|
+
callbackHelp: "DingTalk delivers messages to a public HTTPS endpoint. After saving, copy the generated callback URL into the DingTalk console.",
|
|
19327
|
+
},
|
|
19328
|
+
dingtalkStreamReady: "Stream mode keeps a persistent backend connection and needs no callback URL. Make sure the DingTalk robot is also configured for Stream mode and published.",
|
|
19329
|
+
dingtalkStreamError: "The Stream connection is unhealthy. Check AppKey/AppSecret, the robot's Stream setting, and backend outbound network access.",
|
|
19330
|
+
dingtalkStreamStepTitle: "Confirm Stream connection",
|
|
19331
|
+
dingtalkStreamStepDescription: "Enable the channel, then send a message directly to the DingTalk robot",
|
|
18772
19332
|
confirmDelete: "Delete this integration?",
|
|
18773
19333
|
delete: "Delete",
|
|
18774
19334
|
cancel: "Cancel",
|
|
@@ -18792,6 +19352,7 @@ const messages = {
|
|
|
18792
19352
|
fillIn: "3. Fill in the configuration",
|
|
18793
19353
|
webhookFillIn: "3. Enter the Webhook delivery configuration",
|
|
18794
19354
|
webhookUrlRequired: "Enter the external Webhook message delivery URL",
|
|
19355
|
+
credentialFieldRequired: "Enter {field}",
|
|
18795
19356
|
webhookSetupTitle: "Configure proactive Webhook delivery",
|
|
18796
19357
|
webhookSetupDescription: "Webhook lets explicitly authorized AI employees deliver messages to an external URL. It does not receive external messages, use a callback URL, or require callback verification.",
|
|
18797
19358
|
webhookStepAdd: "Add Webhook",
|
|
@@ -18822,7 +19383,7 @@ const messages = {
|
|
|
18822
19383
|
flow: {
|
|
18823
19384
|
inbound_callback: {
|
|
18824
19385
|
title: "Inbound application callback channel",
|
|
18825
|
-
description: "WeCom, Feishu, and DingTalk have real inbound callbacks wired. Messages received by the external platform are dispatched only to explicitly selected AI employees.",
|
|
19386
|
+
description: "WeCom Smart Bot, Feishu, and DingTalk have real inbound callbacks wired. Messages received by the external platform are dispatched only to explicitly selected AI employees.",
|
|
18826
19387
|
howTo: "2. Configure the open-platform application and callback",
|
|
18827
19388
|
configure: "3. Enter application credentials and service settings",
|
|
18828
19389
|
employeesLabel: "AI employees allowed to serve externally",
|
|
@@ -19189,6 +19750,38 @@ const messages = {
|
|
|
19189
19750
|
billingTierFull: "Full billing",
|
|
19190
19751
|
billingTierHalf: "Half billing",
|
|
19191
19752
|
billingTierNone: "No billing",
|
|
19753
|
+
opsAgentPrefix: "AI Employee",
|
|
19754
|
+
opsAgentUnknown: "AI Employee (unknown)",
|
|
19755
|
+
opsScoringAgentActions: "{count} agent actions",
|
|
19756
|
+
opsScoringTotalActions: "{count} actions total",
|
|
19757
|
+
opsScoringRawRatio: "raw ratio {percent}",
|
|
19758
|
+
opsScoringWeighted: "weighted score {score}",
|
|
19759
|
+
opsOutcomeType: {
|
|
19760
|
+
lead_created: "Lead created",
|
|
19761
|
+
mql: "Marketing-qualified lead",
|
|
19762
|
+
opportunity_created: "Opportunity created",
|
|
19763
|
+
opportunity_won: "Opportunity won",
|
|
19764
|
+
customer_activated: "Customer activated",
|
|
19765
|
+
case_closed: "Case closed",
|
|
19766
|
+
},
|
|
19767
|
+
opsBillingStatus: {
|
|
19768
|
+
pending: "Pending",
|
|
19769
|
+
confirmed: "Confirmed",
|
|
19770
|
+
waived: "Waived",
|
|
19771
|
+
cancelled: "Cancelled",
|
|
19772
|
+
},
|
|
19773
|
+
opsDisputeStatus: {
|
|
19774
|
+
none: "No dispute",
|
|
19775
|
+
open: "Dispute open",
|
|
19776
|
+
raised: "Raised",
|
|
19777
|
+
reviewing: "Reviewing",
|
|
19778
|
+
resolved: "Resolved",
|
|
19779
|
+
},
|
|
19780
|
+
opsBillingTier: {
|
|
19781
|
+
full: "Full billing",
|
|
19782
|
+
half: "Half billing",
|
|
19783
|
+
none: "No billing",
|
|
19784
|
+
},
|
|
19192
19785
|
},
|
|
19193
19786
|
homeDashboard: {
|
|
19194
19787
|
saveSuccess: "__EN_TODO__: 首页配置已保存",
|
|
@@ -20096,7 +20689,7 @@ const messages = {
|
|
|
20096
20689
|
opportunityDetail: {
|
|
20097
20690
|
quotesTab: "Quotes",
|
|
20098
20691
|
contactsTab: "Contact Roles",
|
|
20099
|
-
tasksTab: "
|
|
20692
|
+
tasksTab: "Tasks",
|
|
20100
20693
|
backToPipeline: "Back to Pipeline",
|
|
20101
20694
|
openForecast: "Open Forecast",
|
|
20102
20695
|
},
|