@object-ui/i18n 17.2.0 → 17.3.0

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.
@@ -81,6 +81,10 @@ declare const en: {
81
81
  readonly select: "Select...";
82
82
  readonly openChat: "Open chat";
83
83
  readonly closeChat: "Close chat";
84
+ readonly closePanel: "Close panel";
85
+ readonly resizeDrawer: "Resize drawer";
86
+ readonly itemCount: "{{count}} items";
87
+ readonly itemCountOne: "{{count}} item";
84
88
  readonly toggleSidebar: "Toggle sidebar";
85
89
  readonly package: "Package";
86
90
  };
@@ -105,6 +109,7 @@ declare const en: {
105
109
  readonly url: "Please enter a valid URL";
106
110
  readonly pattern: "{{field}} format is invalid";
107
111
  readonly formInvalid: "Please check the highlighted fields: {{fields}}";
112
+ readonly formInvalidJoiner: ", ";
108
113
  readonly unique: "{{field}} must be unique";
109
114
  readonly type: "{{field}} must be a valid {{type}}";
110
115
  };
@@ -129,12 +134,21 @@ declare const en: {
129
134
  readonly stepOf: "Step {{current}} of {{total}}";
130
135
  readonly createTitle: "Create {{object}}";
131
136
  readonly editTitle: "Edit {{object}}";
137
+ readonly viewTitle: "View {{object}}";
138
+ readonly createTargetOrg: "Creates in {{org}}";
132
139
  readonly saveRecord: "Save";
133
140
  readonly create: "Create";
134
141
  readonly update: "Update";
135
142
  readonly createSuccess: "{{object}} created successfully";
136
143
  readonly updateSuccess: "{{object}} updated successfully";
137
144
  readonly deleteSuccess: "{{object}} deleted successfully";
145
+ readonly fullscreen: {
146
+ readonly title: "Edit text";
147
+ readonly description: "Edit the full text value, then save or cancel your changes.";
148
+ readonly done: "Done";
149
+ readonly toggle: "Edit {{label}} fullscreen";
150
+ readonly textFallback: "text";
151
+ };
138
152
  };
139
153
  readonly fields: {
140
154
  readonly relativeDate: {
@@ -174,6 +188,10 @@ declare const en: {
174
188
  readonly basicEditorHint: "Rich text editor (basic)";
175
189
  readonly placeholder: "Enter text...";
176
190
  };
191
+ readonly options: {
192
+ readonly empty: "No options available";
193
+ readonly selectFirst: "Select {{fields}} first";
194
+ };
177
195
  readonly objectRef: {
178
196
  readonly loading: "Loading objects…";
179
197
  readonly placeholder: "Select an object";
@@ -201,6 +219,13 @@ declare const en: {
201
219
  readonly editAsJson: "Edit as JSON";
202
220
  readonly useVisualBuilder: "Use visual builder";
203
221
  };
222
+ readonly tags: {
223
+ readonly placeholder: "Type and press Enter to add…";
224
+ };
225
+ readonly textarea: {
226
+ readonly characterCount: "Character count: {{count}} of {{max}}";
227
+ readonly charactersRemaining: "Characters remaining: {{count}}";
228
+ };
204
229
  };
205
230
  readonly table: {
206
231
  readonly rowsPerPage: "Rows per page";
@@ -666,6 +691,12 @@ declare const en: {
666
691
  readonly over: "overloaded";
667
692
  readonly empty: "No tasks to allocate.";
668
693
  };
694
+ readonly quickFilter: {
695
+ readonly all: "All";
696
+ readonly clear: "Clear filters";
697
+ readonly empty: "No options";
698
+ readonly resultSummary: "Showing {shown} / {total} tasks";
699
+ };
669
700
  readonly readOnly: "Read-only";
670
701
  readonly readOnlyHint: "Editing is disabled for this view.";
671
702
  readonly lockedHint: "No edit permission";
@@ -712,14 +743,15 @@ declare const en: {
712
743
  readonly editInlineHint: "Double-click to edit";
713
744
  readonly lockedByApproval: "Locked for approval";
714
745
  readonly lockedTooltip: "This record has a pending approval request; editing is locked";
715
- readonly writeStrippedTitle: "Some fields were not saved";
716
- readonly writeStrippedReadonly: "Read-only, so it was not saved: {{fields}}";
717
- readonly writeStrippedByState: "Not editable in this record's current state, so it was not saved: {{fields}}";
746
+ readonly writeStrippedTitle: "Saved — but some fields did not take effect";
747
+ readonly writeStrippedReadonly: "Read-only, so it did not take effect: {{fields}}";
748
+ readonly writeStrippedByState: "Not editable in this record's current state, so it did not take effect: {{fields}}";
718
749
  readonly approvalPendingEditable: "In approval · editable";
719
750
  readonly approvalPendingTooltip: "This record has a pending approval request; this step still allows editing";
720
751
  readonly approvalProgress: "Approvals — {{got}} of {{need}}";
721
752
  readonly approvalProgressGroups: "Sign-off — {{got}} of {{need}} groups";
722
753
  readonly approvalProgressLabel: "Approval progress";
754
+ readonly approvalsPanelTitle: "Approvals";
723
755
  readonly cancelApproval: "Recall approval";
724
756
  readonly cancelApprovalInFlight: "Recalling…";
725
757
  readonly cancelApprovalTooltip: "Recall the pending approval request to unlock this record";
@@ -747,6 +779,15 @@ declare const en: {
747
779
  readonly viewHistory: "View history";
748
780
  readonly delete: "Delete";
749
781
  readonly moreActions: "More actions";
782
+ readonly addReaction: "Add reaction";
783
+ readonly pageHeaderActions: "Page header actions";
784
+ readonly emojiPicker: "Emoji picker";
785
+ readonly reactionCount: "{{emoji}} {{count}} reactions";
786
+ readonly reactionCountOne: "{{emoji}} {{count}} reaction";
787
+ readonly recordDetail: "Record Detail";
788
+ readonly recordDetailWithLabel: "{{label}} Detail";
789
+ readonly openAsFullPage: "Open as full page";
790
+ readonly recordDetailOverlay: "Record detail overlay for {{title}}.";
750
791
  readonly addToFavorites: "Add to favorites";
751
792
  readonly removeFromFavorites: "Remove from favorites";
752
793
  readonly previousRecord: "Previous record";
@@ -1378,6 +1419,13 @@ declare const en: {
1378
1419
  readonly retry: "Retry";
1379
1420
  readonly retrying: "Retrying…";
1380
1421
  };
1422
+ readonly serverAction: {
1423
+ readonly openingTitle: "Opening…";
1424
+ readonly openingBody: "Opening… this may take a moment.";
1425
+ readonly popupBlockedTitle: "Popup blocked";
1426
+ readonly popupBlockedDescription: "Your browser blocked the new tab from opening.";
1427
+ readonly popupBlockedAction: "Open in new tab";
1428
+ };
1381
1429
  readonly shortcuts: {
1382
1430
  readonly title: "Keyboard Shortcuts";
1383
1431
  readonly description: "Quick reference for all available keyboard shortcuts.";
@@ -1613,6 +1661,8 @@ declare const en: {
1613
1661
  readonly objectNotFound: "Object Not Found";
1614
1662
  readonly objectNotFoundDescription: "The object \"{{objectName}}\" does not exist in the current configuration.";
1615
1663
  readonly objectNotFoundHint: "Check your app navigation settings or select a different object from the sidebar.";
1664
+ readonly filterOrNotSavable: "This filter uses OR between conditions, which a saved view cannot store yet. It still applies to this list — remove the OR grouping to save it to the view.";
1665
+ readonly filterNestedNotSavable: "This filter uses nested condition groups, which a saved view cannot store. Flatten it to a single list of conditions to save it to the view.";
1616
1666
  readonly systemViewReadonly: "System view defined in code — read-only.";
1617
1667
  readonly expandToPage: "Open as full page";
1618
1668
  readonly allRecords: "All Records";
@@ -3007,6 +3057,40 @@ declare const en: {
3007
3057
  readonly addSort: "Add sort";
3008
3058
  readonly removeSort: "Remove sort";
3009
3059
  };
3060
+ readonly collaboration: {
3061
+ readonly commentCount: "{{count}} comments";
3062
+ readonly commentCountOne: "{{count}} comment";
3063
+ readonly resolvedSuffix: " · Resolved";
3064
+ readonly sortComments: "Sort comments";
3065
+ readonly sortOldest: "Oldest";
3066
+ readonly sortNewest: "Newest";
3067
+ readonly resolve: "Resolve";
3068
+ readonly reopen: "Reopen";
3069
+ readonly justNow: "just now";
3070
+ readonly minutesAgo: "{{count}}m ago";
3071
+ readonly hoursAgo: "{{count}}h ago";
3072
+ readonly daysAgo: "{{count}}d ago";
3073
+ readonly edited: "(edited)";
3074
+ readonly reactionCount: "{{count}} reactions";
3075
+ readonly reactionCountOne: "{{count}} reaction";
3076
+ readonly addThumbsUp: "Add thumbs up";
3077
+ readonly reply: "Reply";
3078
+ readonly reactThumbsUp: "React with thumbs up";
3079
+ readonly reactHeart: "React with heart";
3080
+ readonly cancelReply: "Cancel reply";
3081
+ readonly replyingTo: "Replying to {{name}}...";
3082
+ readonly replyingToComment: "Replying to comment...";
3083
+ readonly commentPlaceholder: "Add a comment... (use @ to mention)";
3084
+ readonly send: "Send";
3085
+ readonly presentUserCount: "{{count}} users present";
3086
+ readonly presentUserCountOne: "{{count}} user present";
3087
+ readonly moreUserCount: "{{count}} more users";
3088
+ readonly moreUserCountOne: "{{count}} more user";
3089
+ readonly userStatusTitle: "{{name}} ({{status}})";
3090
+ readonly statusActive: "active";
3091
+ readonly statusIdle: "idle";
3092
+ readonly statusAway: "away";
3093
+ };
3010
3094
  };
3011
3095
  export default en;
3012
3096
  export type TranslationKeys = typeof en;
@@ -85,6 +85,12 @@ const en = {
85
85
  select: 'Select...',
86
86
  openChat: 'Open chat',
87
87
  closeChat: 'Close chat',
88
+ closePanel: 'Close panel',
89
+ resizeDrawer: 'Resize drawer',
90
+ // Count badge on a tab / section header. Two keys, NOT an i18next
91
+ // `_one`/`_other` pair — see the `reactionCount` note under `detail`.
92
+ itemCount: '{{count}} items',
93
+ itemCountOne: '{{count}} item',
88
94
  toggleSidebar: 'Toggle sidebar',
89
95
  package: 'Package',
90
96
  },
@@ -109,6 +115,12 @@ const en = {
109
115
  url: 'Please enter a valid URL',
110
116
  pattern: '{{field}} format is invalid',
111
117
  formInvalid: 'Please check the highlighted fields: {{fields}}',
118
+ // Separator between the field names interpolated into `formInvalid`.
119
+ // Per-locale because list punctuation is a locale property, not a code
120
+ // constant: CJK enumerates with U+3001, Latin scripts with a comma+space,
121
+ // Arabic with U+060C. Hardcoding one of them in the renderer put the CJK
122
+ // comma into the English toast (objectstack#5407).
123
+ formInvalidJoiner: ', ',
112
124
  unique: '{{field}} must be unique',
113
125
  type: '{{field}} must be a valid {{type}}',
114
126
  },
@@ -133,12 +145,21 @@ const en = {
133
145
  stepOf: 'Step {{current}} of {{total}}',
134
146
  createTitle: 'Create {{object}}',
135
147
  editTitle: 'Edit {{object}}',
148
+ viewTitle: 'View {{object}}',
149
+ createTargetOrg: 'Creates in {{org}}',
136
150
  saveRecord: 'Save',
137
151
  create: 'Create',
138
152
  update: 'Update',
139
153
  createSuccess: '{{object}} created successfully',
140
154
  updateSuccess: '{{object}} updated successfully',
141
155
  deleteSuccess: '{{object}} deleted successfully',
156
+ fullscreen: {
157
+ title: 'Edit text',
158
+ description: 'Edit the full text value, then save or cancel your changes.',
159
+ done: 'Done',
160
+ toggle: 'Edit {{label}} fullscreen',
161
+ textFallback: 'text',
162
+ },
142
163
  },
143
164
  fields: {
144
165
  relativeDate: {
@@ -178,6 +199,14 @@ const en = {
178
199
  basicEditorHint: 'Rich text editor (basic)',
179
200
  placeholder: 'Enter text...',
180
201
  },
202
+ // objectui#3231 — the "this option list cannot be filled" copy shared by
203
+ // the fixed-option widgets (select / multiselect / radio / checkboxes) AND
204
+ // by the form renderer's gate hint. One key, one sentence: the renderer
205
+ // interpolates field LABELS, a standalone widget its raw field names.
206
+ options: {
207
+ empty: 'No options available',
208
+ selectFirst: 'Select {{fields}} first',
209
+ },
181
210
  objectRef: {
182
211
  loading: 'Loading objects…',
183
212
  placeholder: 'Select an object',
@@ -205,6 +234,32 @@ const en = {
205
234
  editAsJson: 'Edit as JSON',
206
235
  useVisualBuilder: 'Use visual builder',
207
236
  },
237
+ // objectui#3342 — the tags widget's input hint, shown while the tag list
238
+ // is empty. The author-declared `field.placeholder` always wins over this.
239
+ tags: {
240
+ placeholder: 'Type and press Enter to add…',
241
+ },
242
+ // objectui#3406 — the accessible sentence of the textarea character
243
+ // counter, rendered only when the field declares `maxLength`. The visible
244
+ // text is `{count}/{max}` digits and needs no locale. ONE interpolated key
245
+ // rather than assembled parts: ja and ko put the cap BEFORE the count
246
+ // ("of {{max}} characters, {{count}}"), an order no code-side
247
+ // concatenation can produce.
248
+ //
249
+ // objectui#3408 moved it off the `aria-live` region and onto the
250
+ // textarea's `aria-describedby` — read once when focus lands, instead of
251
+ // re-announced on every keystroke — and added `charactersRemaining` as the
252
+ // one thing that IS still spoken while typing: after a pause, and only
253
+ // inside the last 10% (or last 20 characters) of the cap.
254
+ //
255
+ // `charactersRemaining` is deliberately colon-form. `count` sends i18next
256
+ // to plural lookup before the base key, and these packs declare the base
257
+ // key only; a sentence whose grammar does not bend on the number is
258
+ // correct at 1 without ten plural entries per pack.
259
+ textarea: {
260
+ characterCount: 'Character count: {{count}} of {{max}}',
261
+ charactersRemaining: 'Characters remaining: {{count}}',
262
+ },
208
263
  },
209
264
  table: {
210
265
  rowsPerPage: 'Rows per page',
@@ -670,6 +725,15 @@ const en = {
670
725
  over: 'overloaded',
671
726
  empty: 'No tasks to allocate.',
672
727
  },
728
+ quickFilter: {
729
+ all: 'All',
730
+ clear: 'Clear filters',
731
+ empty: 'No options',
732
+ // SINGLE braces on purpose: the ObjectGantt call site resolves these
733
+ // with a literal `.replace('{shown}', …)`, not i18next interpolation
734
+ // (same convention as `autoScheduleDlg.body` above).
735
+ resultSummary: 'Showing {shown} / {total} tasks',
736
+ },
673
737
  readOnly: 'Read-only',
674
738
  readOnlyHint: 'Editing is disabled for this view.',
675
739
  lockedHint: 'No edit permission',
@@ -716,14 +780,15 @@ const en = {
716
780
  editInlineHint: 'Double-click to edit',
717
781
  lockedByApproval: 'Locked for approval',
718
782
  lockedTooltip: 'This record has a pending approval request; editing is locked',
719
- writeStrippedTitle: 'Some fields were not saved',
720
- writeStrippedReadonly: 'Read-only, so it was not saved: {{fields}}',
721
- writeStrippedByState: "Not editable in this record's current state, so it was not saved: {{fields}}",
783
+ writeStrippedTitle: 'Saved — but some fields did not take effect',
784
+ writeStrippedReadonly: 'Read-only, so it did not take effect: {{fields}}',
785
+ writeStrippedByState: "Not editable in this record's current state, so it did not take effect: {{fields}}",
722
786
  approvalPendingEditable: 'In approval · editable',
723
787
  approvalPendingTooltip: 'This record has a pending approval request; this step still allows editing',
724
788
  approvalProgress: 'Approvals — {{got}} of {{need}}',
725
789
  approvalProgressGroups: 'Sign-off — {{got}} of {{need}} groups',
726
790
  approvalProgressLabel: 'Approval progress',
791
+ approvalsPanelTitle: 'Approvals',
727
792
  cancelApproval: 'Recall approval',
728
793
  cancelApprovalInFlight: 'Recalling…',
729
794
  cancelApprovalTooltip: 'Recall the pending approval request to unlock this record',
@@ -752,6 +817,28 @@ const en = {
752
817
  viewHistory: 'View history',
753
818
  delete: 'Delete',
754
819
  moreActions: 'More actions',
820
+ addReaction: 'Add reaction',
821
+ pageHeaderActions: 'Page header actions',
822
+ emojiPicker: 'Emoji picker',
823
+ reactionCount: '{{emoji}} {{count}} reactions',
824
+ reactionCountOne: '{{emoji}} {{count}} reaction',
825
+ // Record-overlay chrome (objectstack#5506). `recordDetail` is the VISIBLE
826
+ // heading the overlay falls back to when the host passes no title;
827
+ // `openAsFullPage` is the icon-only expand button's default accessible
828
+ // name; `recordDetailOverlay` is the sr-only description on the
829
+ // Sheet/Dialog when the host supplies none.
830
+ recordDetail: 'Record Detail',
831
+ // Same heading, but for the hosts that DO know which object they are
832
+ // showing (objectui#3426): `ListView` / `ObjectGrid` used to string-build
833
+ // `` `${label} Detail` `` in TypeScript and hand it to the overlay's
834
+ // `title` prop, so `recordDetail` above never got a chance to apply and a
835
+ // non-English session read one English heading. Interpolating keeps the
836
+ // object label in the heading without freezing English word order — a pack
837
+ // whose qualifier trails the noun (de: a hyphenated compound) or that needs
838
+ // a possessive particle (ja/zh) writes its own arrangement here.
839
+ recordDetailWithLabel: '{{label}} Detail',
840
+ openAsFullPage: 'Open as full page',
841
+ recordDetailOverlay: 'Record detail overlay for {{title}}.',
755
842
  addToFavorites: 'Add to favorites',
756
843
  removeFromFavorites: 'Remove from favorites',
757
844
  previousRecord: 'Previous record',
@@ -1400,6 +1487,15 @@ const en = {
1400
1487
  retry: 'Retry',
1401
1488
  retrying: 'Retrying…',
1402
1489
  },
1490
+ // Copy owned by the console server-action wrapper (`consoleServerAction.ts`,
1491
+ // objectui#3321): the pre-opened SSO spinner tab and the popup-blocked toast.
1492
+ serverAction: {
1493
+ openingTitle: 'Opening…',
1494
+ openingBody: 'Opening… this may take a moment.',
1495
+ popupBlockedTitle: 'Popup blocked',
1496
+ popupBlockedDescription: 'Your browser blocked the new tab from opening.',
1497
+ popupBlockedAction: 'Open in new tab',
1498
+ },
1403
1499
  shortcuts: {
1404
1500
  title: 'Keyboard Shortcuts',
1405
1501
  description: 'Quick reference for all available keyboard shortcuts.',
@@ -1643,6 +1739,8 @@ const en = {
1643
1739
  objectNotFound: 'Object Not Found',
1644
1740
  objectNotFoundDescription: 'The object "{{objectName}}" does not exist in the current configuration.',
1645
1741
  objectNotFoundHint: 'Check your app navigation settings or select a different object from the sidebar.',
1742
+ filterOrNotSavable: 'This filter uses OR between conditions, which a saved view cannot store yet. It still applies to this list — remove the OR grouping to save it to the view.',
1743
+ filterNestedNotSavable: 'This filter uses nested condition groups, which a saved view cannot store. Flatten it to a single list of conditions to save it to the view.',
1646
1744
  systemViewReadonly: 'System view defined in code — read-only.',
1647
1745
  expandToPage: 'Open as full page',
1648
1746
  allRecords: 'All Records',
@@ -3052,5 +3150,82 @@ const en = {
3052
3150
  addSort: 'Add sort',
3053
3151
  removeSort: 'Remove sort',
3054
3152
  },
3153
+ // `@object-ui/collaboration` — the comment thread's copy (objectstack#5506,
3154
+ // objectui#3424). The package used to carry every one of these as an English
3155
+ // literal, so a zh session read a Chinese console with an English comment
3156
+ // thread inside it. `COLLAB_DEFAULT_TRANSLATIONS` in that package mirrors
3157
+ // this namespace verbatim as its no-provider fallback; keep the two in step.
3158
+ //
3159
+ // The generic action words (Save / Cancel / Edit / Delete) are NOT repeated
3160
+ // here — the thread reads them from `common`.
3161
+ collaboration: {
3162
+ // Thread header. `commentCount`/`commentCountOne` are two keys, NOT an
3163
+ // i18next `_one`/`_other` pair — see the `reactionCount` note under
3164
+ // `detail`: zh/ja/ko have no separate singular form, so those packs would
3165
+ // legitimately omit the `_one` half and `all-locales-key-parity` reads a
3166
+ // legitimately-absent half as a lost key.
3167
+ commentCount: '{{count}} comments',
3168
+ commentCountOne: '{{count}} comment',
3169
+ // Appended to the count, separator included, so a translator owns the
3170
+ // whole phrase rather than inheriting an English-shaped ` · ` glue.
3171
+ resolvedSuffix: ' · Resolved',
3172
+ sortComments: 'Sort comments',
3173
+ sortOldest: 'Oldest',
3174
+ sortNewest: 'Newest',
3175
+ resolve: 'Resolve',
3176
+ reopen: 'Reopen',
3177
+ // Relative comment age. Word-level entries only — the component keeps its
3178
+ // existing minute/hour/day buckets and no date library was introduced.
3179
+ justNow: 'just now',
3180
+ minutesAgo: '{{count}}m ago',
3181
+ hoursAgo: '{{count}}h ago',
3182
+ daysAgo: '{{count}}d ago',
3183
+ edited: '(edited)',
3184
+ // Reaction-chip tooltip. A DEDICATED pair rather than `detail.reactionCount`:
3185
+ // that one interpolates `{{emoji}}`, and here the emoji is the chip's
3186
+ // visible label with nothing to hand the placeholder.
3187
+ reactionCount: '{{count}} reactions',
3188
+ reactionCountOne: '{{count}} reaction',
3189
+ addThumbsUp: 'Add thumbs up',
3190
+ reply: 'Reply',
3191
+ // Accessible names for the three emoji-only controls (objectui#3441).
3192
+ // A `button`'s accessible name is computed from its CONTENT before `title`
3193
+ // is ever consulted, so '👍' / '❤️' / '✕' named themselves — these keys are
3194
+ // wired as `aria-label`, which overrides content.
3195
+ //
3196
+ // `reactThumbsUp` stays distinct from `addThumbsUp` above even though both
3197
+ // dispatch the same reaction today: that one names the reaction-bar `+`
3198
+ // picker, and the two render side by side on a comment that already has
3199
+ // reactions.
3200
+ reactThumbsUp: 'React with thumbs up',
3201
+ reactHeart: 'React with heart',
3202
+ // Not `common.cancel`: an accessible name has to say what is cancelled.
3203
+ // Only the reply TARGET is dropped — the composer keeps whatever was typed.
3204
+ cancelReply: 'Cancel reply',
3205
+ replyingTo: 'Replying to {{name}}...',
3206
+ // The no-author-found half of the reply banner, as a whole sentence:
3207
+ // languages that inflect around the addressee cannot build it by
3208
+ // substituting a noun into the `{{name}}` form.
3209
+ replyingToComment: 'Replying to comment...',
3210
+ commentPlaceholder: 'Add a comment... (use @ to mention)',
3211
+ send: 'Send',
3212
+ // Presence avatar stack (objectui#3440). `presentUserCount*` is the avatar
3213
+ // group's `aria-label` — with only images and initials inside, that label
3214
+ // IS the control for a screen reader. Two keys, same reason as
3215
+ // `commentCount` above.
3216
+ presentUserCount: '{{count}} users present',
3217
+ presentUserCountOne: '{{count}} user present',
3218
+ moreUserCount: '{{count}} more users',
3219
+ moreUserCountOne: '{{count}} more user',
3220
+ // Avatar tooltip. The parentheses are part of the translation, spacing
3221
+ // included, so the CJK packs can drop the space English puts before `(`.
3222
+ userStatusTitle: '{{name}} ({{status}})',
3223
+ // Display copy for the `PresenceUser['status']` enum. The enum value
3224
+ // itself stays raw data — it is translated at the render exit only, and a
3225
+ // status outside the union falls back to the raw string.
3226
+ statusActive: 'active',
3227
+ statusIdle: 'idle',
3228
+ statusAway: 'away',
3229
+ },
3055
3230
  };
3056
3231
  export default en;
@@ -78,6 +78,10 @@ declare const es: {
78
78
  select: string;
79
79
  openChat: string;
80
80
  closeChat: string;
81
+ closePanel: string;
82
+ resizeDrawer: string;
83
+ itemCount: string;
84
+ itemCountOne: string;
81
85
  toggleSidebar: string;
82
86
  package: string;
83
87
  };
@@ -102,6 +106,7 @@ declare const es: {
102
106
  url: string;
103
107
  pattern: string;
104
108
  formInvalid: string;
109
+ formInvalidJoiner: string;
105
110
  unique: string;
106
111
  type: string;
107
112
  };
@@ -126,12 +131,21 @@ declare const es: {
126
131
  stepOf: string;
127
132
  createTitle: string;
128
133
  editTitle: string;
134
+ viewTitle: string;
135
+ createTargetOrg: string;
129
136
  saveRecord: string;
130
137
  create: string;
131
138
  update: string;
132
139
  createSuccess: string;
133
140
  updateSuccess: string;
134
141
  deleteSuccess: string;
142
+ fullscreen: {
143
+ title: string;
144
+ description: string;
145
+ done: string;
146
+ toggle: string;
147
+ textFallback: string;
148
+ };
135
149
  };
136
150
  fields: {
137
151
  image: {
@@ -171,6 +185,10 @@ declare const es: {
171
185
  basicEditorHint: string;
172
186
  placeholder: string;
173
187
  };
188
+ options: {
189
+ empty: string;
190
+ selectFirst: string;
191
+ };
174
192
  objectRef: {
175
193
  loading: string;
176
194
  placeholder: string;
@@ -198,6 +216,13 @@ declare const es: {
198
216
  editAsJson: string;
199
217
  useVisualBuilder: string;
200
218
  };
219
+ tags: {
220
+ placeholder: string;
221
+ };
222
+ textarea: {
223
+ characterCount: string;
224
+ charactersRemaining: string;
225
+ };
201
226
  };
202
227
  table: {
203
228
  rowsPerPage: string;
@@ -636,6 +661,12 @@ declare const es: {
636
661
  over: string;
637
662
  empty: string;
638
663
  };
664
+ quickFilter: {
665
+ all: string;
666
+ clear: string;
667
+ empty: string;
668
+ resultSummary: string;
669
+ };
639
670
  readOnly: string;
640
671
  readOnlyHint: string;
641
672
  lockedHint: string;
@@ -718,6 +749,15 @@ declare const es: {
718
749
  viewHistory: string;
719
750
  delete: string;
720
751
  moreActions: string;
752
+ addReaction: string;
753
+ pageHeaderActions: string;
754
+ emojiPicker: string;
755
+ reactionCount: string;
756
+ reactionCountOne: string;
757
+ recordDetail: string;
758
+ recordDetailWithLabel: string;
759
+ openAsFullPage: string;
760
+ recordDetailOverlay: string;
721
761
  addToFavorites: string;
722
762
  removeFromFavorites: string;
723
763
  previousRecord: string;
@@ -821,6 +861,7 @@ declare const es: {
821
861
  approvalProgress: string;
822
862
  approvalProgressGroups: string;
823
863
  approvalProgressLabel: string;
864
+ approvalsPanelTitle: string;
824
865
  cancelApproval: string;
825
866
  cancelApprovalInFlight: string;
826
867
  cancelApprovalTooltip: string;
@@ -1412,6 +1453,13 @@ declare const es: {
1412
1453
  retry: string;
1413
1454
  retrying: string;
1414
1455
  };
1456
+ serverAction: {
1457
+ openingTitle: string;
1458
+ openingBody: string;
1459
+ popupBlockedTitle: string;
1460
+ popupBlockedDescription: string;
1461
+ popupBlockedAction: string;
1462
+ };
1415
1463
  shortcuts: {
1416
1464
  title: string;
1417
1465
  description: string;
@@ -1479,6 +1527,8 @@ declare const es: {
1479
1527
  objectNotFound: string;
1480
1528
  objectNotFoundDescription: string;
1481
1529
  objectNotFoundHint: string;
1530
+ filterOrNotSavable: string;
1531
+ filterNestedNotSavable: string;
1482
1532
  allRecords: string;
1483
1533
  exitDesignMode: string;
1484
1534
  enterDesignMode: string;
@@ -3000,5 +3050,39 @@ declare const es: {
3000
3050
  addSort: string;
3001
3051
  removeSort: string;
3002
3052
  };
3053
+ collaboration: {
3054
+ commentCount: string;
3055
+ commentCountOne: string;
3056
+ resolvedSuffix: string;
3057
+ sortComments: string;
3058
+ sortOldest: string;
3059
+ sortNewest: string;
3060
+ resolve: string;
3061
+ reopen: string;
3062
+ justNow: string;
3063
+ minutesAgo: string;
3064
+ hoursAgo: string;
3065
+ daysAgo: string;
3066
+ edited: string;
3067
+ reactionCount: string;
3068
+ reactionCountOne: string;
3069
+ addThumbsUp: string;
3070
+ reply: string;
3071
+ reactThumbsUp: string;
3072
+ reactHeart: string;
3073
+ cancelReply: string;
3074
+ replyingTo: string;
3075
+ replyingToComment: string;
3076
+ commentPlaceholder: string;
3077
+ send: string;
3078
+ presentUserCount: string;
3079
+ presentUserCountOne: string;
3080
+ moreUserCount: string;
3081
+ moreUserCountOne: string;
3082
+ userStatusTitle: string;
3083
+ statusActive: string;
3084
+ statusIdle: string;
3085
+ statusAway: string;
3086
+ };
3003
3087
  };
3004
3088
  export default es;