2023-11-28 23:42:31 +01:00
// Dutch phrases
export default {
com_ui_examples : 'Voorbeelden' ,
com_ui_new_chat : 'Nieuwe chat' ,
2024-02-11 15:10:12 +01:00
com_ui_happy_birthday : 'Het is mijn eerste verjaardag!' ,
2023-11-28 23:42:31 +01:00
com_ui_example_quantum_computing : 'Leg quantumcomputing in eenvoudige termen uit' ,
com_ui_example_10_year_old_b_day : 'Heb je creatieve ideeën voor de verjaardag van een 10-jarige?' ,
com_ui_example_http_in_js : 'Hoe maak ik een HTTP-aanvraag in Javascript?' ,
com_ui_capabilities : 'Mogelijkheden' ,
com_ui_capability_remember : 'Onthoudt wat de gebruiker eerder in het gesprek heeft gezegd' ,
com_ui_capability_correction : 'Staat de gebruiker toe om vervolgcorrigeringen te geven' ,
com_ui_capability_decline_requests : 'Getraind om ongepaste verzoeken te weigeren' ,
com_ui_limitations : 'Beperkingen' ,
com_ui_limitation_incorrect_info : 'Kan af en toe onjuiste informatie genereren' ,
com_ui_limitation_harmful_biased :
'Kan af en toe schadelijke instructies of bevooroordeelde inhoud produceren' ,
com_ui_limitation_limited_2021 : 'Beperkte kennis van de wereld en gebeurtenissen na 2021' ,
com_ui_input : 'Invoer' ,
com_ui_close : 'Sluiten' ,
com_ui_model : 'Model' ,
com_ui_select_model : 'Selecteer een model' ,
com_ui_use_prompt : 'Gebruik prompt' ,
com_ui_prev : 'Vorige' ,
com_ui_next : 'Volgende' ,
com_ui_stop : 'Stop' ,
com_ui_prompt_templates : 'Prompt-sjablonen' ,
com_ui_hide_prompt_templates : 'Prompt-sjablonen verbergen' ,
com_ui_showing : 'Tonen' ,
com_ui_of : 'van' ,
com_ui_entries : 'Items' ,
com_ui_pay_per_call : 'Alle AI-gesprekken op één plek. Betaal per gesprek en niet per maand' ,
com_ui_new_footer : 'Alle AI-gesprekken op één plek.' ,
com_ui_enter : 'Invoeren' ,
com_ui_submit : 'Indienen' ,
com_ui_upload_success : 'Bestand succesvol geüpload' ,
com_ui_cancel : 'Annuleren' ,
com_ui_save : 'Opslaan' ,
com_ui_copy_to_clipboard : 'Kopiëren naar klembord' ,
com_ui_copied_to_clipboard : 'Gekopieerd naar klembord' ,
com_ui_regenerate : 'Opnieuw genereren' ,
com_ui_continue : 'Doorgaan' ,
com_ui_edit : 'Bewerken' ,
com_ui_success : 'Succes' ,
com_ui_all : 'alle' ,
com_ui_clear : 'Wissen' ,
com_ui_revoke : 'Intrekken' ,
com_ui_revoke_info : 'Trek alle door de gebruiker verstrekte referenties in' ,
2024-05-02 08:48:26 +02:00
com_ui_import_conversation : 'Importeren' ,
com_ui_import_conversation_info : 'Gesprekken importeren vanuit een JSON-bestand' ,
com_ui_import_conversation_success : 'Gesprekken succesvol geïmporteerd' ,
com_ui_import_conversation_error :
'Er is een fout opgetreden bij het importeren van je gesprekken' ,
2023-11-28 23:42:31 +01:00
com_ui_confirm_action : 'Bevestig actie' ,
com_ui_chats : 'chats' ,
2024-06-15 08:12:03 -07:00
com_ui_share : 'Delen' ,
com_ui_copy_link : 'Link kopiëren' ,
com_ui_create_link : 'Link aanmaken' ,
com_ui_share_link_to_chat : 'Deel link naar chat' ,
com_ui_share_error : 'Er is een fout opgetreden bij het delen van de chatlink' ,
2024-06-21 07:12:37 -07:00
com_ui_share_retrieve_error :
'Er is een fout opgetreden bij het verwijderen van de gedeelde link.' ,
com_ui_share_delete_error : 'Er is een fout opgetreden bij het verwijderen van de gedeelde link.' ,
🗨️ feat: Prompts (#3131)
* 🗨️ feat: Prompts (#7)
* WIP: MERGE prompts/frontend (#1)
* added schema for prompt and promptgroup, added model methods for prompts, added routes for prompts
* * updated promptGroup Schema
* updated model methods for prompts (get, add, delete)
* slight fixes in prompt routes
* * Created Files Management components
* Created Vector Stores components
* Added file management route in the routes folder
* Completed UI for Files list, Compeleted UI for vector stores list, Completed UI for upload file modal, Completed UI for preview file, Completed UI for preview vector store
* Fixed style and UI fixes for file dashboard, file list and vector stores list
* added responsiveness classes for vector store page
* fixed responsiveness of file page, dashboard page, and main page
* fixed styling and responsiveness issues on dashboard page, file list page and vector store page
* added queries and mutations for prompts and promptGroups, added relevant endpoints in data-provider, added relevant components prompts, added and updated relevant APIs
* added types on mutation queries data service, updated prompt attributes
* feature: Prompts and prompt groups management, added relevant APIs, added types for data service/queries/mutations, added relevant mutation and queries
* chore: typing clarifications
* added drop down on prompts mgmt dashboard
* Fixes: fixed version switching issue on tags update or labels update, added cross button on create prompt group, fixed list updation on prompt group renaiming, added CSV upload button
* Feature: Added oneliner and category attributes in prompt group, added schema for categories, added schema methods and route for categories
* chore: typing and lint issues
* chore: more type and linter fixes
* chore: linting
* chore: prompt controller and backend typing example; MOVE TO CONTROLLER DIRECTORY
* chore: more type fixes
* style: prompt name changes
* chore: more type changes, and stateful prompt name change without flickering
* fix: Return result of savePrompt in patchPrompt API endpoint
* fix: navigation prompt queries; refactor: name 'prompt-groups' to just 'groups'
* refactor: fetch prompt groups rewrite
* refactor(prompts): query/mutation statefulness
* refactor: remove `isActive` field
* refactor: remove labels, consolidate logic
* style: width, layout shift
* refactor: improve hover toggle behavior and styling
* refactor: add useParams hook to PromptListItem for dynamic rendering and add timeout ref for blur timeout
* chore: hide upload button
* refactor: import Button component from correct location in PromptSidePanel
* style: prompt editor styling
* style: fix more layout shifts
* style: container scroll
* refactor: Rename CreatePrompt component to CreatePromptForm
* refactor: use react-hook-form
* refactor: Add Prompts components and routes to Dashboard
* style: skeletons for loading
* fix: optimize makePromptProduction
* refactor: consolidate variables
* feat: create prompt form validation
* refactor: Consolidate variables and update mutation hooks
* style: minor touchups
* chore: Update lucide-react npm dependency to version 0.394.0 and npm audit fix
* refactor: add a new icon for the Prompts heading.
* style: Update PromptsView heading to use h1 instead of h2 and other minor margin issues
* chore: wording
* refactor: Update PromptsView heading to use h1 instead of h2, consolidate variables, and add new icons
* refactor: Prompts Button for Mobile
* feature: added category field in prompt group, added relevant API and static data on BE to support FE UI for category in prompt group
* chore: template for prompt cards
---------
Co-authored-by: Fawadpot <contactfawada@gmail.com>
* WIP: Prompts/frontend Continued (#2)
* chore: loading style, remove unused component
* feat: Add CategorySelector component for prompt group category selection
* feat: add categories to create prompt
* feat: prompt versions styling
* feat: optimistic updates for prompt production state
* refactor: optimize form state and show if prompt field is dirty with cross icon, also other styling changes
* chore: remove unused code and localizations
* fix: light mode styling
* WIP: SidePanel Prompts
* refactor: move to groups directory
* refactor: rename GroupsSidePanel to GroupSidePanel and update imports
* style: ListCard
* refactor: isProduction changes
* refactor: infinite query with productionPrompt
* refactor: optimize snippets and prompts, and styling
* refactor: Update getSnippet function to accept a length parameter
* chore: localizations
* feat: prompts navigation to chat and vice versa
* fix: create prompt
* feat: remember last selected category for creating prompts
* fix(promptGroups): fix pagination and add usePromptGroupsNav hook
* Prompts/frontend 3 (#3)
* fix: stateful issues with prompt groups
* style: improved layout
* refactor: improve variable naming in Eng.ts
* refactor: theme selector styling improvements
* added prompt cards on chat new page, with dark mode, added API to fetch random prompts, added types for useQuery
Slightly improved usePromptGroupNav logic to fetch updated result for pageSize, updated prompt cards view with darkmode and responsiveness
fixed page size option buttons styling to match the theme
added dark mode on create prompt page and prompt edit/preview page
fixed page size option buttons styling to match the theme
added dark mode on create prompt page and prompt edit/preview page
* WIP: Prompts/frontend (#4)
* fix: optimize and fix paginated query
* fix: remove unique constraint on names
* refactor: button links and styling
* style: menu border light mode
* feat: Add Auto-Send Switch component for prompts groups
* refactor(ChatView): use form context for submission text
* chore: clear convo state on navigation to dashboard routes
* chore: save prompt edit name on tab, remove console log
* feat: basic prompt submission
* refactor: move Auto-Send Switch
* style(ListCard): border styling
* feat: Add function to detect variables in text
* feat: Add OriginalDialog component to UI library
* chore(ui): Update SelectDropDown options list class to use text-xs size
* refactor: submitMessage hook now includes submitPrompt, make compatible to document query selector
* WIP: Variable Dialog
* feat: variable submission working for both auto-send and non-autosend
* feat: dashboard breadcrumbs and prompts/chat navigation
* refactor: dashboard breadcrumb and dashboard link to chat navigation
* refactor: Update VariableDialog and VariableForm styles
* Prompts: Admin features (#5)
* fix: link issue
* fix: usePromptGroupsNav add missing dep.
* style: dashbreadcrumb and sidepanel text color
* temp fix: remove refetch on pageNumber change
* fix: handle multiple variable replacement
* WIP: create project schema and add project groups to fetch
* feat: Add functionality to add prompt group IDs to a project
* feat: Add caching for startup config in config route
* chore: remove prompt landing
* style: Update Skeleton component with additional background styling
* chore: styling and types
* WIP: SharePrompt first draft
* feat(SharePrompt): form validation
* feat: shared global indicators
* refactor: prompt details
* refactor: change NoPromptGroup directory
* feat: preview prompt
* feat: remove/add global prompts, add rbac-related enums
* refactor: manage prompts location
* WIP: first draft admin settings for prompts
* feat: SystemRoles enum
* refactor: update PromptDetails component styling
* style: ellipsis custom class for showing more preview text
* WIP: initial role schema and initialization
* style: improved margins for single unordered lists
* fix: use custom chat form context to prevent re-renders from FormProvider
* feat: Role mutations for Prompt Permissions
* feat: fetch user role
* feat: update AdminSettings form default values from user role values
* refactor: rename PromptPermissions to Permissions for general definitions
* feat: initial role checks
* feat: Add optional `bodyProps` parameter to generateCheckAccess middleware
* refactor: UI access checks
* Prompts: delete (#6)
* Fixed delete prompt version API, fixed types and logic for prompt version deletion, updated prompt delete mutation logic
* chore: Update return type of deletePrompt function in Prompt.js
---------
Co-authored-by: Fawadpot <contactfawada@gmail.com>
* chore: Update package-lock.json version to 0.7.4-rc1 and fast-xml-parser to 4.4.0
* feat: toast for saving admin settings, add timer no-access navigation
* feat: always make prod
* feat: Add localization to category labels in CategorySelector component
* feat: Update category label localization in CategorySelector component
* fix: Enable making prompt production in Prompt API
---------
Co-authored-by: Fawadpot <contactfawada@gmail.com>
* feat: Add helper fn for dark mode detection in ThemeProvider
* style: surface-primary definition
* fix(useHasAccess): utilize user.role and not just USER role
* fix: empty category and role fetch
* refactort: increase max height to options list and use label if no localization is found
* fix: update CategorySelector to handle empty category value and improve localization
* refactor: move prompts to own store/reactquery modules, add in filter WIP
* refactor: Rename AutoSendSwitch to AutoSendPrompt
* style: theming commit
* style: fix slight coloring issue for convos in dark mode
* style: better composition for prompts side panel
* style: remove gray-750 and make it gray-850
* chore: adjust theming
* feat: filter all prompt groups and properly remove prompts from projects
* refactor: optimize delete prompt groups further
* chore: localization
* feat: Add uniqueProperty filtering to normalizeData function
* WIP: filter prompts
* chore: Update FilterPrompts component to include User icon in FilterItem
* feat(FilterPrompts): set categories
* feat: more system filters and show selected category icon
* style: always make prod, flips switch to avoid mis-clicks
* style: ui/ux loading/no prompts
* chore: style FilterPrompts ChatView
* fix: handle missing role edge case
* style: special variables
* feat: special variables
* refactor: improve replaceSpecialVars function in prompts.ts
* feat: simple/advanced editor modes
* chore: bump versions
* feat: localizations and hide production button on simple mode
* fix: error connecting layout shift
* fix: prompts CRUD for admins
* fix: secure single group fetch
* style: sidepanel styling
* style(PromptName): bring edit button closer to name
* style: mobile prompts header
* style: mobile prompts header continued
* style: align send prompts switch right
* feat: description
* Update special variables description in Eng.ts
* feat: update/create/preview oneliner
* fix: allow empty oneliner update
* style: loading improvement and always make selected prompt Production if simple mode
* fix: production index set and remove unused props
* fix(ci): mock initializeRoles
* fix: address #3128
* fix: address #3128
* feat: add deletion confirmation dialog
* fix: mobile UI issues
* style: prompt library UI update
* style: focus, logcal tab order
* style: Refactor SelectDropDown component to improve code readability and maintainability
* chore: bump data-provider
* chore: fix labels
* refactor: confirm delete prompt version
---------
Co-authored-by: Marco Beretta <81851188+berry-13@users.noreply.github.com>
2024-06-20 20:24:32 -04:00
com_ui_share_create_message :
'Uw naam en alle berichten die u na het delen toevoegt, blijven privé.' ,
🚀 feat: Shared Links (#2772)
* ✨ feat(types): add necessary types for shared link feature
* ✨ feat: add shared links functions to data service
Added functions for retrieving, creating, updating, and deleting shared links and shared messages.
* ✨ feat: Add useGetSharedMessages hook to fetch shared messages by shareId
Adds a new hook `useGetSharedMessages` which fetches shared messages based on the provided shareId.
* ✨ feat: Add share schema and data access functions to API models
* ✨ feat: Add share endpoint to API
The GET /api/share/${shareId} is exposed to the public, so authentication is not required. Other paths require authentication.
* ♻️ refactor(utils): generalize react-query cache manipulation functions
Introduces generic functions for manipulating react-query cache entries, marking a refinement in how query cache data is managed. It aims to enhance the flexibility and reusability of the cache interaction patterns within our application.
- Replaced specific index names with more generic terms in queries.ts, enhancing consistency across data handling functions.
- Introduced new utility functions in collection.ts for adding, updating, and deleting data entries in an InfiniteData<TCollection>. These utility functions (`addData`, `updateData`, `deleteData`, `findPage`) are designed to be re-usable across different data types and collections.
- Adapted existing conversation utility functions in convos.ts to leverage these new generic utilities.
* ✨ feat(shared-link): add functions to manipulate shared link cache list
implemented new utility functions to handle additions, updates, and deletions in the shared link cache list.
* ✨ feat: Add mutations and queries for shared links
* ✨ feat(shared-link): add `Share` button to conversation list
- Added a share button in each conversation in the conversation list.
- Implemented functionality where clicking the share button triggers a POST request to the API.
- The API checks if a share link was already created for the conversation today; if so, it returns the existing link.
- If no link was created for today, the API will create a new share link and return it.
- Each click on the share button results in a new API request, following the specification similar to ChatGPT's share link feature.
* ♻️ refactor(hooks): generalize useNavScrolling for broader use
- Modified `useNavScrolling` to accept a generic type parameter `TData`, allowing it to be used with different data structures besides `ConversationListResponse`.
- Updated instances in `Nav.tsx` and `ArchivedChatsTable.tsx` to explicitly specify `ConversationListResponse` as the type argument when invoking `useNavScrolling`.
* ✨ feat(settings): add shared links listing table with delete functionality in settings
- Integrated a delete button for each shared link in the table, allowing users to remove links as needed.
* ♻️ refactor(components): separate `EndpointIcon` from `Icon` component for standalone use
* ♻️ refactor: update useGetSharedMessages to return TSharedLink
- Modified the useGetSharedMessages hook to return not only a list of TMessage but also the TSharedLink itself.
- This change was necessary to support displaying the title and date in the Shared Message UI, which requires data from TSharedLink.
* ✨ feat(shared link): add UI for displaying shared conversations without authentication
- Implemented a new UI component to display shared conversations, designed to be accessible without requiring authentication.
- Reused components from the authenticated Messages module where possible. Copied and adapted components that could not be directly reused to fit the non-authenticated context.
* 🔧 chore: Add translations
Translate labels only. Messages remain in English as they are possibly subject to change.
* ♻️ refactor: add icon and tooltip props to EditMenuButton component
* moved icon and popover to arguments so that EditMenuButton can be reused.
* modified so that when a ShareButton is closed, the parent DropdownMenu is also closed.
* ♻️irefactor: added DropdownMenu for Export and Share
* ♻️ refactor: renamed component names more intuitive
* More accurate naming of the dropdown menu.
* When the export button is closed, the parent dropdown menu is also closed.
* 🌍 chore: updated translations
* 🐞 Fix: OpenID Profile Image Download (#2757)
* Add fetch requirement
Fixes - error: [openidStrategy] downloadImage: Error downloading image at URL "https://graph.microsoft.com/v1.0/me/photo/$value": TypeError: response.buffer is not a function
* Update openidStrategy.js
---------
Co-authored-by: Danny Avila <danacordially@gmail.com>
* 🚑 fix(export): Issue exporting Conversation with Assistants (#2769)
* 🚑 fix(export): use content as text if content is present in the message
If the endpoint is assistants, the text of the message goes into content, not message.text.
* refactor(ExportModel): TypeScript, remove unused code
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
* 📤style: export button icon (#2752)
* refactor(ShareDialog): logic and styling
* refactor(ExportAndShareMenu): imports order and icon update
* chore: imports
* chore: imports/render logic
* feat: message branching
* refactor: add optional config to useGetStartupConfig
* refactor: disable endpoints query
* chore: fix search view styling gradient in light mode
* style: ShareView gradient styling
* refactor(Share): use select queries
* style: shared link table buttons
* localization and dark text styling
* style: fix clipboard button layout shift app-wide and add localization for copy code
* support assistants message content in shared links, add useCopyToClipboard, add copy buttons to Search Messages and Shared Link Messages
* add localizations
* comparisons
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
Co-authored-by: bsu3338 <bsu3338@users.noreply.github.com>
Co-authored-by: Fuegovic <32828263+fuegovic@users.noreply.github.com>
2024-05-17 18:13:32 -04:00
com_ui_share_created_message :
2024-06-15 08:12:03 -07:00
'Een gedeelde link naar uw chat is aangemaakt. Beheer eerder gedeelde chats op elk moment via Instellingen.' ,
🚀 feat: Shared Links (#2772)
* ✨ feat(types): add necessary types for shared link feature
* ✨ feat: add shared links functions to data service
Added functions for retrieving, creating, updating, and deleting shared links and shared messages.
* ✨ feat: Add useGetSharedMessages hook to fetch shared messages by shareId
Adds a new hook `useGetSharedMessages` which fetches shared messages based on the provided shareId.
* ✨ feat: Add share schema and data access functions to API models
* ✨ feat: Add share endpoint to API
The GET /api/share/${shareId} is exposed to the public, so authentication is not required. Other paths require authentication.
* ♻️ refactor(utils): generalize react-query cache manipulation functions
Introduces generic functions for manipulating react-query cache entries, marking a refinement in how query cache data is managed. It aims to enhance the flexibility and reusability of the cache interaction patterns within our application.
- Replaced specific index names with more generic terms in queries.ts, enhancing consistency across data handling functions.
- Introduced new utility functions in collection.ts for adding, updating, and deleting data entries in an InfiniteData<TCollection>. These utility functions (`addData`, `updateData`, `deleteData`, `findPage`) are designed to be re-usable across different data types and collections.
- Adapted existing conversation utility functions in convos.ts to leverage these new generic utilities.
* ✨ feat(shared-link): add functions to manipulate shared link cache list
implemented new utility functions to handle additions, updates, and deletions in the shared link cache list.
* ✨ feat: Add mutations and queries for shared links
* ✨ feat(shared-link): add `Share` button to conversation list
- Added a share button in each conversation in the conversation list.
- Implemented functionality where clicking the share button triggers a POST request to the API.
- The API checks if a share link was already created for the conversation today; if so, it returns the existing link.
- If no link was created for today, the API will create a new share link and return it.
- Each click on the share button results in a new API request, following the specification similar to ChatGPT's share link feature.
* ♻️ refactor(hooks): generalize useNavScrolling for broader use
- Modified `useNavScrolling` to accept a generic type parameter `TData`, allowing it to be used with different data structures besides `ConversationListResponse`.
- Updated instances in `Nav.tsx` and `ArchivedChatsTable.tsx` to explicitly specify `ConversationListResponse` as the type argument when invoking `useNavScrolling`.
* ✨ feat(settings): add shared links listing table with delete functionality in settings
- Integrated a delete button for each shared link in the table, allowing users to remove links as needed.
* ♻️ refactor(components): separate `EndpointIcon` from `Icon` component for standalone use
* ♻️ refactor: update useGetSharedMessages to return TSharedLink
- Modified the useGetSharedMessages hook to return not only a list of TMessage but also the TSharedLink itself.
- This change was necessary to support displaying the title and date in the Shared Message UI, which requires data from TSharedLink.
* ✨ feat(shared link): add UI for displaying shared conversations without authentication
- Implemented a new UI component to display shared conversations, designed to be accessible without requiring authentication.
- Reused components from the authenticated Messages module where possible. Copied and adapted components that could not be directly reused to fit the non-authenticated context.
* 🔧 chore: Add translations
Translate labels only. Messages remain in English as they are possibly subject to change.
* ♻️ refactor: add icon and tooltip props to EditMenuButton component
* moved icon and popover to arguments so that EditMenuButton can be reused.
* modified so that when a ShareButton is closed, the parent DropdownMenu is also closed.
* ♻️irefactor: added DropdownMenu for Export and Share
* ♻️ refactor: renamed component names more intuitive
* More accurate naming of the dropdown menu.
* When the export button is closed, the parent dropdown menu is also closed.
* 🌍 chore: updated translations
* 🐞 Fix: OpenID Profile Image Download (#2757)
* Add fetch requirement
Fixes - error: [openidStrategy] downloadImage: Error downloading image at URL "https://graph.microsoft.com/v1.0/me/photo/$value": TypeError: response.buffer is not a function
* Update openidStrategy.js
---------
Co-authored-by: Danny Avila <danacordially@gmail.com>
* 🚑 fix(export): Issue exporting Conversation with Assistants (#2769)
* 🚑 fix(export): use content as text if content is present in the message
If the endpoint is assistants, the text of the message goes into content, not message.text.
* refactor(ExportModel): TypeScript, remove unused code
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
* 📤style: export button icon (#2752)
* refactor(ShareDialog): logic and styling
* refactor(ExportAndShareMenu): imports order and icon update
* chore: imports
* chore: imports/render logic
* feat: message branching
* refactor: add optional config to useGetStartupConfig
* refactor: disable endpoints query
* chore: fix search view styling gradient in light mode
* style: ShareView gradient styling
* refactor(Share): use select queries
* style: shared link table buttons
* localization and dark text styling
* style: fix clipboard button layout shift app-wide and add localization for copy code
* support assistants message content in shared links, add useCopyToClipboard, add copy buttons to Search Messages and Shared Link Messages
* add localizations
* comparisons
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
Co-authored-by: bsu3338 <bsu3338@users.noreply.github.com>
Co-authored-by: Fuegovic <32828263+fuegovic@users.noreply.github.com>
2024-05-17 18:13:32 -04:00
com_ui_share_update_message :
2024-06-15 08:12:03 -07:00
'Uw naam, aangepaste instructies en alle berichten die u na het delen toevoegt, blijven privé.' ,
🚀 feat: Shared Links (#2772)
* ✨ feat(types): add necessary types for shared link feature
* ✨ feat: add shared links functions to data service
Added functions for retrieving, creating, updating, and deleting shared links and shared messages.
* ✨ feat: Add useGetSharedMessages hook to fetch shared messages by shareId
Adds a new hook `useGetSharedMessages` which fetches shared messages based on the provided shareId.
* ✨ feat: Add share schema and data access functions to API models
* ✨ feat: Add share endpoint to API
The GET /api/share/${shareId} is exposed to the public, so authentication is not required. Other paths require authentication.
* ♻️ refactor(utils): generalize react-query cache manipulation functions
Introduces generic functions for manipulating react-query cache entries, marking a refinement in how query cache data is managed. It aims to enhance the flexibility and reusability of the cache interaction patterns within our application.
- Replaced specific index names with more generic terms in queries.ts, enhancing consistency across data handling functions.
- Introduced new utility functions in collection.ts for adding, updating, and deleting data entries in an InfiniteData<TCollection>. These utility functions (`addData`, `updateData`, `deleteData`, `findPage`) are designed to be re-usable across different data types and collections.
- Adapted existing conversation utility functions in convos.ts to leverage these new generic utilities.
* ✨ feat(shared-link): add functions to manipulate shared link cache list
implemented new utility functions to handle additions, updates, and deletions in the shared link cache list.
* ✨ feat: Add mutations and queries for shared links
* ✨ feat(shared-link): add `Share` button to conversation list
- Added a share button in each conversation in the conversation list.
- Implemented functionality where clicking the share button triggers a POST request to the API.
- The API checks if a share link was already created for the conversation today; if so, it returns the existing link.
- If no link was created for today, the API will create a new share link and return it.
- Each click on the share button results in a new API request, following the specification similar to ChatGPT's share link feature.
* ♻️ refactor(hooks): generalize useNavScrolling for broader use
- Modified `useNavScrolling` to accept a generic type parameter `TData`, allowing it to be used with different data structures besides `ConversationListResponse`.
- Updated instances in `Nav.tsx` and `ArchivedChatsTable.tsx` to explicitly specify `ConversationListResponse` as the type argument when invoking `useNavScrolling`.
* ✨ feat(settings): add shared links listing table with delete functionality in settings
- Integrated a delete button for each shared link in the table, allowing users to remove links as needed.
* ♻️ refactor(components): separate `EndpointIcon` from `Icon` component for standalone use
* ♻️ refactor: update useGetSharedMessages to return TSharedLink
- Modified the useGetSharedMessages hook to return not only a list of TMessage but also the TSharedLink itself.
- This change was necessary to support displaying the title and date in the Shared Message UI, which requires data from TSharedLink.
* ✨ feat(shared link): add UI for displaying shared conversations without authentication
- Implemented a new UI component to display shared conversations, designed to be accessible without requiring authentication.
- Reused components from the authenticated Messages module where possible. Copied and adapted components that could not be directly reused to fit the non-authenticated context.
* 🔧 chore: Add translations
Translate labels only. Messages remain in English as they are possibly subject to change.
* ♻️ refactor: add icon and tooltip props to EditMenuButton component
* moved icon and popover to arguments so that EditMenuButton can be reused.
* modified so that when a ShareButton is closed, the parent DropdownMenu is also closed.
* ♻️irefactor: added DropdownMenu for Export and Share
* ♻️ refactor: renamed component names more intuitive
* More accurate naming of the dropdown menu.
* When the export button is closed, the parent dropdown menu is also closed.
* 🌍 chore: updated translations
* 🐞 Fix: OpenID Profile Image Download (#2757)
* Add fetch requirement
Fixes - error: [openidStrategy] downloadImage: Error downloading image at URL "https://graph.microsoft.com/v1.0/me/photo/$value": TypeError: response.buffer is not a function
* Update openidStrategy.js
---------
Co-authored-by: Danny Avila <danacordially@gmail.com>
* 🚑 fix(export): Issue exporting Conversation with Assistants (#2769)
* 🚑 fix(export): use content as text if content is present in the message
If the endpoint is assistants, the text of the message goes into content, not message.text.
* refactor(ExportModel): TypeScript, remove unused code
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
* 📤style: export button icon (#2752)
* refactor(ShareDialog): logic and styling
* refactor(ExportAndShareMenu): imports order and icon update
* chore: imports
* chore: imports/render logic
* feat: message branching
* refactor: add optional config to useGetStartupConfig
* refactor: disable endpoints query
* chore: fix search view styling gradient in light mode
* style: ShareView gradient styling
* refactor(Share): use select queries
* style: shared link table buttons
* localization and dark text styling
* style: fix clipboard button layout shift app-wide and add localization for copy code
* support assistants message content in shared links, add useCopyToClipboard, add copy buttons to Search Messages and Shared Link Messages
* add localizations
* comparisons
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
Co-authored-by: bsu3338 <bsu3338@users.noreply.github.com>
Co-authored-by: Fuegovic <32828263+fuegovic@users.noreply.github.com>
2024-05-17 18:13:32 -04:00
com_ui_share_updated_message :
2024-06-15 08:12:03 -07:00
'Een gedeelde link naar uw chat is bijgewerkt. Beheer eerder gedeelde chats op elk moment via Instellingen.' ,
com_ui_shared_link_not_found : 'Gedeelde link niet gevonden' ,
2023-11-28 23:42:31 +01:00
com_ui_delete : 'Verwijderen' ,
com_ui_delete_conversation : 'Chat verwijderen?' ,
🗨️ feat: Prompts (#3131)
* 🗨️ feat: Prompts (#7)
* WIP: MERGE prompts/frontend (#1)
* added schema for prompt and promptgroup, added model methods for prompts, added routes for prompts
* * updated promptGroup Schema
* updated model methods for prompts (get, add, delete)
* slight fixes in prompt routes
* * Created Files Management components
* Created Vector Stores components
* Added file management route in the routes folder
* Completed UI for Files list, Compeleted UI for vector stores list, Completed UI for upload file modal, Completed UI for preview file, Completed UI for preview vector store
* Fixed style and UI fixes for file dashboard, file list and vector stores list
* added responsiveness classes for vector store page
* fixed responsiveness of file page, dashboard page, and main page
* fixed styling and responsiveness issues on dashboard page, file list page and vector store page
* added queries and mutations for prompts and promptGroups, added relevant endpoints in data-provider, added relevant components prompts, added and updated relevant APIs
* added types on mutation queries data service, updated prompt attributes
* feature: Prompts and prompt groups management, added relevant APIs, added types for data service/queries/mutations, added relevant mutation and queries
* chore: typing clarifications
* added drop down on prompts mgmt dashboard
* Fixes: fixed version switching issue on tags update or labels update, added cross button on create prompt group, fixed list updation on prompt group renaiming, added CSV upload button
* Feature: Added oneliner and category attributes in prompt group, added schema for categories, added schema methods and route for categories
* chore: typing and lint issues
* chore: more type and linter fixes
* chore: linting
* chore: prompt controller and backend typing example; MOVE TO CONTROLLER DIRECTORY
* chore: more type fixes
* style: prompt name changes
* chore: more type changes, and stateful prompt name change without flickering
* fix: Return result of savePrompt in patchPrompt API endpoint
* fix: navigation prompt queries; refactor: name 'prompt-groups' to just 'groups'
* refactor: fetch prompt groups rewrite
* refactor(prompts): query/mutation statefulness
* refactor: remove `isActive` field
* refactor: remove labels, consolidate logic
* style: width, layout shift
* refactor: improve hover toggle behavior and styling
* refactor: add useParams hook to PromptListItem for dynamic rendering and add timeout ref for blur timeout
* chore: hide upload button
* refactor: import Button component from correct location in PromptSidePanel
* style: prompt editor styling
* style: fix more layout shifts
* style: container scroll
* refactor: Rename CreatePrompt component to CreatePromptForm
* refactor: use react-hook-form
* refactor: Add Prompts components and routes to Dashboard
* style: skeletons for loading
* fix: optimize makePromptProduction
* refactor: consolidate variables
* feat: create prompt form validation
* refactor: Consolidate variables and update mutation hooks
* style: minor touchups
* chore: Update lucide-react npm dependency to version 0.394.0 and npm audit fix
* refactor: add a new icon for the Prompts heading.
* style: Update PromptsView heading to use h1 instead of h2 and other minor margin issues
* chore: wording
* refactor: Update PromptsView heading to use h1 instead of h2, consolidate variables, and add new icons
* refactor: Prompts Button for Mobile
* feature: added category field in prompt group, added relevant API and static data on BE to support FE UI for category in prompt group
* chore: template for prompt cards
---------
Co-authored-by: Fawadpot <contactfawada@gmail.com>
* WIP: Prompts/frontend Continued (#2)
* chore: loading style, remove unused component
* feat: Add CategorySelector component for prompt group category selection
* feat: add categories to create prompt
* feat: prompt versions styling
* feat: optimistic updates for prompt production state
* refactor: optimize form state and show if prompt field is dirty with cross icon, also other styling changes
* chore: remove unused code and localizations
* fix: light mode styling
* WIP: SidePanel Prompts
* refactor: move to groups directory
* refactor: rename GroupsSidePanel to GroupSidePanel and update imports
* style: ListCard
* refactor: isProduction changes
* refactor: infinite query with productionPrompt
* refactor: optimize snippets and prompts, and styling
* refactor: Update getSnippet function to accept a length parameter
* chore: localizations
* feat: prompts navigation to chat and vice versa
* fix: create prompt
* feat: remember last selected category for creating prompts
* fix(promptGroups): fix pagination and add usePromptGroupsNav hook
* Prompts/frontend 3 (#3)
* fix: stateful issues with prompt groups
* style: improved layout
* refactor: improve variable naming in Eng.ts
* refactor: theme selector styling improvements
* added prompt cards on chat new page, with dark mode, added API to fetch random prompts, added types for useQuery
Slightly improved usePromptGroupNav logic to fetch updated result for pageSize, updated prompt cards view with darkmode and responsiveness
fixed page size option buttons styling to match the theme
added dark mode on create prompt page and prompt edit/preview page
fixed page size option buttons styling to match the theme
added dark mode on create prompt page and prompt edit/preview page
* WIP: Prompts/frontend (#4)
* fix: optimize and fix paginated query
* fix: remove unique constraint on names
* refactor: button links and styling
* style: menu border light mode
* feat: Add Auto-Send Switch component for prompts groups
* refactor(ChatView): use form context for submission text
* chore: clear convo state on navigation to dashboard routes
* chore: save prompt edit name on tab, remove console log
* feat: basic prompt submission
* refactor: move Auto-Send Switch
* style(ListCard): border styling
* feat: Add function to detect variables in text
* feat: Add OriginalDialog component to UI library
* chore(ui): Update SelectDropDown options list class to use text-xs size
* refactor: submitMessage hook now includes submitPrompt, make compatible to document query selector
* WIP: Variable Dialog
* feat: variable submission working for both auto-send and non-autosend
* feat: dashboard breadcrumbs and prompts/chat navigation
* refactor: dashboard breadcrumb and dashboard link to chat navigation
* refactor: Update VariableDialog and VariableForm styles
* Prompts: Admin features (#5)
* fix: link issue
* fix: usePromptGroupsNav add missing dep.
* style: dashbreadcrumb and sidepanel text color
* temp fix: remove refetch on pageNumber change
* fix: handle multiple variable replacement
* WIP: create project schema and add project groups to fetch
* feat: Add functionality to add prompt group IDs to a project
* feat: Add caching for startup config in config route
* chore: remove prompt landing
* style: Update Skeleton component with additional background styling
* chore: styling and types
* WIP: SharePrompt first draft
* feat(SharePrompt): form validation
* feat: shared global indicators
* refactor: prompt details
* refactor: change NoPromptGroup directory
* feat: preview prompt
* feat: remove/add global prompts, add rbac-related enums
* refactor: manage prompts location
* WIP: first draft admin settings for prompts
* feat: SystemRoles enum
* refactor: update PromptDetails component styling
* style: ellipsis custom class for showing more preview text
* WIP: initial role schema and initialization
* style: improved margins for single unordered lists
* fix: use custom chat form context to prevent re-renders from FormProvider
* feat: Role mutations for Prompt Permissions
* feat: fetch user role
* feat: update AdminSettings form default values from user role values
* refactor: rename PromptPermissions to Permissions for general definitions
* feat: initial role checks
* feat: Add optional `bodyProps` parameter to generateCheckAccess middleware
* refactor: UI access checks
* Prompts: delete (#6)
* Fixed delete prompt version API, fixed types and logic for prompt version deletion, updated prompt delete mutation logic
* chore: Update return type of deletePrompt function in Prompt.js
---------
Co-authored-by: Fawadpot <contactfawada@gmail.com>
* chore: Update package-lock.json version to 0.7.4-rc1 and fast-xml-parser to 4.4.0
* feat: toast for saving admin settings, add timer no-access navigation
* feat: always make prod
* feat: Add localization to category labels in CategorySelector component
* feat: Update category label localization in CategorySelector component
* fix: Enable making prompt production in Prompt API
---------
Co-authored-by: Fawadpot <contactfawada@gmail.com>
* feat: Add helper fn for dark mode detection in ThemeProvider
* style: surface-primary definition
* fix(useHasAccess): utilize user.role and not just USER role
* fix: empty category and role fetch
* refactort: increase max height to options list and use label if no localization is found
* fix: update CategorySelector to handle empty category value and improve localization
* refactor: move prompts to own store/reactquery modules, add in filter WIP
* refactor: Rename AutoSendSwitch to AutoSendPrompt
* style: theming commit
* style: fix slight coloring issue for convos in dark mode
* style: better composition for prompts side panel
* style: remove gray-750 and make it gray-850
* chore: adjust theming
* feat: filter all prompt groups and properly remove prompts from projects
* refactor: optimize delete prompt groups further
* chore: localization
* feat: Add uniqueProperty filtering to normalizeData function
* WIP: filter prompts
* chore: Update FilterPrompts component to include User icon in FilterItem
* feat(FilterPrompts): set categories
* feat: more system filters and show selected category icon
* style: always make prod, flips switch to avoid mis-clicks
* style: ui/ux loading/no prompts
* chore: style FilterPrompts ChatView
* fix: handle missing role edge case
* style: special variables
* feat: special variables
* refactor: improve replaceSpecialVars function in prompts.ts
* feat: simple/advanced editor modes
* chore: bump versions
* feat: localizations and hide production button on simple mode
* fix: error connecting layout shift
* fix: prompts CRUD for admins
* fix: secure single group fetch
* style: sidepanel styling
* style(PromptName): bring edit button closer to name
* style: mobile prompts header
* style: mobile prompts header continued
* style: align send prompts switch right
* feat: description
* Update special variables description in Eng.ts
* feat: update/create/preview oneliner
* fix: allow empty oneliner update
* style: loading improvement and always make selected prompt Production if simple mode
* fix: production index set and remove unused props
* fix(ci): mock initializeRoles
* fix: address #3128
* fix: address #3128
* feat: add deletion confirmation dialog
* fix: mobile UI issues
* style: prompt library UI update
* style: focus, logcal tab order
* style: Refactor SelectDropDown component to improve code readability and maintainability
* chore: bump data-provider
* chore: fix labels
* refactor: confirm delete prompt version
---------
Co-authored-by: Marco Beretta <81851188+berry-13@users.noreply.github.com>
2024-06-20 20:24:32 -04:00
com_ui_delete_confirm : 'Hiermee wordt' ,
🚀feat: Archive conversations (#2590)
* 🔧chore: add internationalization labels for archive feature
* ✨ feat: Add function to useArchiveConversationMutation()
This commit adds a new mutation function `useArchiveConversationMutation()` for archiving conversations. This function takes the ID string of the conversation to be archived and returns a mutation result object. Upon successful archiving, it removes and refreshes the conversation from the query data cache.
While ChatGPT PATCHes the archived status by sending `{is_archived: true}` to the URL `/backend-api/conversation/$conversation_id`, this implementation uses the `dataService.updateConversation(payload)` with a POST method, aligning with the existing code conventions.
* ✨ feat(api): add is_archived field to Conversation schema and update getConvosByPage method
This commit adds a new field `is_archived` with a default value of false to the Conversation schema. It also modifies the `getConvosByPage` method within the Conversation API to adjust the query to only target conversations where `is_archived` is set to false or where the `is_archived` field does not exist. The function `getConvosQueried`, which returns conversations for a specified Conversation ID, was determined not to require consideration of whether `is_archived` is true or false, and thus was not modified.
* ♻️ refactor: add className prop to DotsIcon component
To enhance the versatility of the DotsIcon component, this commit introduces the ability to specify a className prop, allowing for greater customization.
* ✨ feat(ui): add Edit Button to group Title change and Conversation delete buttons
Added a new Edit Button to the conversations, similar to the ChatGPT UI, which groups options for editing the conversation title and deleting conversations. This grouping is accessible through a dialogue that appears when the three-dot icon is clicked.
* ♻️ refactor(ui): enhance Delete Button to accept className and label options
Enhanced the Delete Button component to accept a `className` for customization and an optional `appendLabel`. The DeleteButton component is used by both `Convo.tsx` and `Conversation.tsx`, but currently only `Convo.tsx` is active and `Conversation.tsx `is apparently not used; removing `Conversation.tsx` may eliminate the need for the `appendLabel` property in the future.
* ♻️ refactor(ui): enhance RenameButton to accept label options
Added the ability to optionally display labels; the Rename Button component is used by both `Convo.tsx` and `Conversation.tsx`, but currently only `Convo.tsx` is active and `Conversation.tsx `is apparently not used; removing `Conversation.tsx` may eliminate the need for the `appendLabel` property in the future.
* 🔧 chors: additional localization labels
* ♻️ refactor: change is_archived property of conversation to camelCase
* Refactor the is_archived property of conversation to camelCase (isArchived) to adhere to the existing code conventions
* Modify the function that retrieves conversations to accept the isArchived parameter
* ♻️ refactor: add archiveConversation mutation
I thought I could divert dataService.updateConversation, but added a new archiveConversation because the request types are different. It might be better to make them common, but to avoid side effects, I added a new function this time.
Added process to deleteConversationMutation to delete archived conversations
* ✨ feat: Add the function to hide a cancel button in DialogTemplate component
The Cancel button is not needed when displaying the archive list, so I made the Cancel button optional.
* ♻️ refactor: Add support for filtering archived conversations in Nav component
This commit modifies the Nav component to add the ability to filter out archived conversations when fetching data. This is done by adding `isArchived: false` to the query parameters for both the `useConversationsInfiniteQuery()` and `useSearchInfiniteQuery()` hooks, effectively excluding any archived conversations from the results returned.
* ♻️ refactor: add Tooltip to DeleteButton
* Add Tooltip to DeleteButton component
* Display Tooltip when DeleteButton only shows an Icon without text
* ✨ feat(ui): add ArchiveButton component for archiving conversations
To be compatible with the ChatGPT UI, no confirmation dialog is displayed when ArchiveButton is clicked. The basic behavior conforms to DeleteButton and RenameButton.
* ✨ feat(ui): add Archive button to list of conversations
Modify the Nav of the conversation list to include a dropdown that contains the Rename and Delete options, similar to the ChatGPT UI. Additionally, an Archive button has been added adjacent to the dropdown menu.
* ✨ feat: Add ArchivedChatsTable component
Adds the `ArchivedChatsTable` component, which displays a table of archived chats. It has been implemented to be as compatible with the ChatGPT UI as possible.
* 🚑 fix(tooltip): increase z-index to ensure visibility over Dialog
Resolve an issue where tooltips were not visible when displayed over a Dialog. The z-index of `DialogPrimitive.Portal` in `Dialog.tsx` is set to 999. Since the rationale for this value is unclear, the z-index of the tooltip has been increased to 1000 to guarantee its visibility above the Dialog component.
* 🔧 chors: add internationalization labels
2024-05-06 20:07:00 -07:00
com_ui_rename : 'Hernoemen' ,
com_ui_archive : 'Archiveren' ,
com_ui_archive_error : 'Kan conversatie niet archiveren' ,
com_ui_unarchive : 'Uit archiveren' ,
com_ui_unarchive_error : 'Kan conversatie niet uit archiveren' ,
com_ui_more_options : 'Meer' ,
2024-07-29 07:45:59 -07:00
com_ui_bookmarks : 'Bladwijzers' ,
com_ui_bookmarks_rebuild : 'Herbouwen' ,
com_ui_bookmarks_new : 'Nieuwe bladwijzer' ,
2024-08-07 14:23:33 -04:00
com_ui_bookmark_delete_confirm : 'Weet je zeker dat je deze bladwijzer wilt verwijderen?' ,
2024-07-29 07:45:59 -07:00
com_ui_bookmarks_title : 'Titel' ,
com_ui_bookmarks_count : 'Aantal' ,
com_ui_bookmarks_description : 'Beschrijving' ,
com_ui_bookmarks_create_success : 'Bladwijzer succesvol aangemaakt' ,
com_ui_bookmarks_update_success : 'Bladwijzer succesvol bijgewerkt' ,
com_ui_bookmarks_delete_success : 'Bladwijzer succesvol verwijderd' ,
2024-08-07 14:23:33 -04:00
com_ui_bookmarks_create_error : 'Er is een fout opgetreden bij het maken van de bladwijzer' ,
com_ui_bookmarks_update_error : 'Er is een fout opgetreden bij het bijwerken van de bladwijzer' ,
com_ui_bookmarks_delete_error : 'Er is een fout opgetreden bij het verwijderen van de bladwijzer' ,
2024-07-29 07:45:59 -07:00
com_ui_bookmarks_add_to_conversation : 'Toevoegen aan huidig gesprek' ,
2024-08-31 22:08:04 +02:00
com_ui_accept : 'Ik accepteer' ,
com_ui_decline : 'Ik accepteer niet' ,
com_ui_terms_and_conditions : 'Gebruiksvoorwaarden' ,
com_ui_no_terms_content : 'Geen gebruiksvoorwaarden-inhoud om weer te geven' ,
2023-11-28 23:42:31 +01:00
com_auth_error_login :
'Kan niet inloggen met de verstrekte informatie. Controleer uw referenties en probeer het opnieuw.' ,
com_auth_error_login_rl : 'Te veel inlogpogingen in een korte tijd. Probeer het later nog eens.' ,
com_auth_error_login_ban :
'Uw account is tijdelijk verbannen vanwege schendingen van onze service.' ,
com_auth_error_login_server :
'Er was een interne serverfout. Wacht een paar momenten en probeer het opnieuw.' ,
com_auth_no_account : 'Heb je geen account?' ,
com_auth_sign_up : 'Aanmelden' ,
com_auth_sign_in : 'Inloggen' ,
com_auth_google_login : 'Inloggen met Google' ,
com_auth_facebook_login : 'Inloggen met Facebook' ,
com_auth_github_login : 'Inloggen met Github' ,
com_auth_discord_login : 'Inloggen met Discord' ,
com_auth_email : 'E-mailadres' ,
com_auth_email_required : 'E-mailadres is verplicht' ,
com_auth_email_min_length : 'E-mailadres moet minstens 6 tekens bevatten' ,
com_auth_email_max_length : 'E-mailadres mag niet langer zijn dan 120 tekens' ,
com_auth_email_pattern : 'Je moet een geldig e-mailadres invoeren' ,
com_auth_email_address : 'E-mailadres' ,
com_auth_password : 'Wachtwoord' ,
com_auth_password_required : 'Wachtwoord is verplicht' ,
com_auth_password_min_length : 'Wachtwoord moet minstens 8 tekens bevatten' ,
com_auth_password_max_length : 'Wachtwoord moet minder dan 128 tekens bevatten' ,
com_auth_password_forgot : 'Wachtwoord vergeten?' ,
com_auth_password_confirm : 'Bevestig wachtwoord' ,
com_auth_password_not_match : 'Wachtwoorden komen niet overeen' ,
com_auth_continue : 'Doorgaan' ,
com_auth_create_account : 'Maak uw account aan' ,
com_auth_error_create :
'Er is een fout opgetreden bij het registreren van uw account. Probeer het opnieuw.' ,
com_auth_full_name : 'Volledige naam' ,
com_auth_name_required : 'Naam is verplicht' ,
com_auth_name_min_length : 'Naam moet minstens 3 tekens bevatten' ,
com_auth_name_max_length : 'Naam mag niet langer zijn dan 80 tekens' ,
com_auth_username : 'Gebruikersnaam (optioneel)' ,
com_auth_username_required : 'Gebruikersnaam is verplicht' ,
com_auth_username_min_length : 'Gebruikersnaam moet minstens 2 tekens bevatten' ,
com_auth_username_max_length : 'Gebruikersnaam mag niet langer zijn dan 20 tekens' ,
com_auth_already_have_account : 'Heb je al een account?' ,
com_auth_login : 'Inloggen' ,
com_auth_reset_password : 'Stel uw wachtwoord opnieuw in' ,
com_auth_click : 'Klik' ,
com_auth_here : 'HIER' ,
com_auth_to_reset_your_password : 'om uw wachtwoord opnieuw in te stellen.' ,
com_auth_reset_password_link_sent : 'E-mail verzonden' ,
com_auth_reset_password_email_sent :
'Er is een e-mail naar je verzonden met verdere instructies om je wachtwoord opnieuw in te stellen.' ,
com_auth_error_reset_password :
'Er was een probleem met het opnieuw instellen van uw wachtwoord. Er is geen gebruiker gevonden met het opgegeven e-mailadres. Probeer het opnieuw.' ,
com_auth_reset_password_success : 'Wachtwoord opnieuw ingesteld' ,
com_auth_login_with_new_password : 'Je kunt nu inloggen met je nieuwe wachtwoord.' ,
com_auth_error_invalid_reset_token : 'Dit wachtwoord resettoken is niet langer geldig.' ,
com_auth_click_here : 'Klik hier' ,
com_auth_to_try_again : 'om het opnieuw te proberen.' ,
com_auth_submit_registration : 'Registratie indienen' ,
com_auth_welcome_back : 'Welkom terug' ,
com_endpoint_open_menu : 'Open menu' ,
com_endpoint_bing_enable_sydney : 'Schakel Sydney in' ,
com_endpoint_bing_to_enable_sydney : 'Om Sydney in te schakelen' ,
com_endpoint_bing_jailbreak : 'Jailbreak' ,
com_endpoint_bing_context_placeholder :
'Bing kan maximaal 7k tokens voor \'context\' gebruiken, waarnaar het kan verwijzen voor het gesprek. De specifieke limiet is niet bekend, maar kan fouten opleveren bij meer dan 7k tokens' ,
com_endpoint_bing_system_message_placeholder :
'WAARSCHUWING: Misbruik van deze functie kan ertoe leiden dat je VERBANNEN wordt van het gebruik van Bing! Klik op \'Systeembericht\' voor volledige instructies en het standaardbericht indien weggelaten, wat de \'Sydney\'-voorinstelling is die veilig wordt geacht.' ,
com_endpoint_system_message : 'Systeembericht' ,
com_endpoint_default_blank : 'standaard: leeg' ,
com_endpoint_default_false : 'standaard: onwaar' ,
com_endpoint_default_creative : 'standaard: creatief' ,
com_endpoint_default_empty : 'standaard: leeg' ,
com_endpoint_default_with_num : 'standaard: {0}' ,
com_endpoint_context : 'Context' ,
com_endpoint_tone_style : 'Toonstijl' ,
com_endpoint_token_count : 'Aantal tokens' ,
com_endpoint_output : 'Uitvoer' ,
com_endpoint_google_temp :
'Hogere waarden = meer willekeurig, terwijl lagere waarden = meer gericht en deterministisch. We raden aan dit of Top P te wijzigen, maar niet beide.' ,
com_endpoint_google_topp :
'Top-p verandert hoe het model tokens selecteert voor uitvoer. Tokens worden geselecteerd van meest K (zie topK-parameter) waarschijnlijk tot minst waarschijnlijk totdat de som van hun kansen gelijk is aan de top-p-waarde.' ,
com_endpoint_google_topk :
'Top-k verandert hoe het model tokens selecteert voor uitvoer. Een top-k van 1 betekent dat het geselecteerde token het meest waarschijnlijk is van alle tokens in de vocabulaire van het model (ook wel \'greedy decoding\' genoemd), terwijl een top-k van 3 betekent dat het volgende token wordt geselecteerd uit de 3 meest waarschijnlijke tokens (met behulp van temperatuur).' ,
com_endpoint_google_maxoutputtokens :
' Maximum aantal tokens dat kan worden gegenereerd in de reactie. Geef een lagere waarde op voor kortere reacties en een hogere waarde voor langere reacties.' ,
2023-12-10 14:54:13 -05:00
com_endpoint_google_custom_name_placeholder : 'Stel een aangepaste naam in voor Google' ,
2023-11-28 23:42:31 +01:00
com_endpoint_prompt_prefix_placeholder :
'Stel aangepaste instructies of context in. Wordt genegeerd indien leeg.' ,
com_endpoint_custom_name : 'Aangepaste naam' ,
com_endpoint_prompt_prefix : 'Prompt-voorvoegsel' ,
com_endpoint_temperature : 'Temperatuur' ,
com_endpoint_default : 'standaard' ,
com_endpoint_top_p : 'Top P' ,
com_endpoint_top_k : 'Top K' ,
com_endpoint_max_output_tokens : 'Max. uitvoertokens' ,
com_endpoint_openai_temp :
'Hogere waarden = meer willekeurig, terwijl lagere waarden = meer gericht en deterministisch. We raden aan dit of Top P te wijzigen, maar niet beide.' ,
com_endpoint_openai_max :
'Het max. aantal tokens dat kan worden gegenereerd. De totale lengte van invoer-tokens en gegenereerde tokens is beperkt door de contextlengte van het model.' ,
com_endpoint_openai_topp :
'Een alternatief voor sampling met temperatuur, genaamd nucleus sampling, waarbij het model de resultaten van de tokens met de top_p waarschijnlijkheidsmassa in overweging neemt. Dus 0,1 betekent dat alleen de tokens die de bovenste 10% waarschijnlijkheidsmassa omvatten, in overweging worden genomen. We raden aan dit of temperatuur te wijzigen, maar niet beide.' ,
com_endpoint_openai_freq :
'Getal tussen -2,0 en 2,0. Positieve waarden straffen nieuwe tokens op basis van hun bestaande frequentie in de tekst tot nu toe, waardoor de kans dat het model dezelfde regel letterlijk herhaalt, afneemt.' ,
com_endpoint_openai_pres :
'Getal tussen -2,0 en 2,0. Positieve waarden straffen nieuwe tokens op basis van of ze al voorkomen in de tekst tot nu toe, waardoor de kans dat het model over nieuwe onderwerpen praat toeneemt.' ,
com_endpoint_openai_custom_name_placeholder : 'Stel een aangepaste naam in voor ChatGPT' ,
com_endpoint_openai_prompt_prefix_placeholder :
'Stel aangepaste instructies in om op te nemen in Systeembericht. Standaard: geen' ,
com_endpoint_anthropic_temp :
'Varieert van 0 tot 1. Gebruik een lagere temp voor analytische / meerkeuze taken en een hogere temp voor creatieve en generatieve taken. We raden aan dit of Top P te wijzigen, maar niet beide.' ,
com_endpoint_anthropic_topp :
'Top-p verandert hoe het model tokens selecteert voor uitvoer. Tokens worden geselecteerd van meest K (zie topK-parameter) waarschijnlijk tot minst waarschijnlijk totdat de som van hun kansen gelijk is aan de top-p-waarde.' ,
com_endpoint_anthropic_topk :
'Top-k verandert hoe het model tokens selecteert voor uitvoer. Een top-k van 1 betekent dat het geselecteerde token het meest waarschijnlijk is van alle tokens in de vocabulaire van het model (ook wel \'greedy decoding\' genoemd), terwijl een top-k van 3 betekent dat het volgende token wordt geselecteerd uit de 3 meest waarschijnlijke tokens (met behulp van temperatuur).' ,
com_endpoint_anthropic_maxoutputtokens :
'Maximum aantal tokens dat kan worden gegenereerd in de reactie. Geef een lagere waarde op voor kortere reacties en een hogere waarde voor langere reacties.' ,
com_endpoint_anthropic_custom_name_placeholder : 'Stel een aangepaste naam in voor Anthropic' ,
com_endpoint_frequency_penalty : 'Frequentiestraf' ,
com_endpoint_presence_penalty : 'Aanwezigheidsstraf' ,
com_endpoint_plug_use_functions : 'Gebruik functies inschakelen' ,
com_endpoint_plug_skip_completion : 'Voltooiing overslaan' ,
com_endpoint_disabled_with_tools : 'uitgeschakeld met tools' ,
com_endpoint_disabled_with_tools_placeholder : 'Uitgeschakeld met geselecteerde tools' ,
com_endpoint_plug_set_custom_instructions_for_gpt_placeholder :
'Stel aangepaste instructies in om op te nemen in Systeembericht. Standaard: geen' ,
com_endpoint_import : 'Importeren' ,
com_endpoint_set_custom_name :
'Stel een aangepaste naam in, voor het geval je deze voorinstelling kunt vinden' ,
com_endpoint_preset : 'voorinstelling' ,
com_endpoint_presets : 'voorinstellingen' ,
com_endpoint_preset_selected : 'Voorinstelling actief!' ,
com_endpoint_preset_name : 'Naam voorinstelling' ,
com_endpoint_new_topic : 'Nieuw onderwerp' ,
com_endpoint : 'Eindpunt' ,
com_endpoint_hide : 'Verbergen' ,
com_endpoint_show : 'Weergeven' ,
com_endpoint_examples : ' Voorinstellingen' ,
com_endpoint_completion : 'Voltooiing' ,
com_endpoint_agent : 'Agent' ,
com_endpoint_show_what_settings : '{0} instellingen weergeven' ,
com_endpoint_save : 'Opslaan' ,
com_endpoint_export : 'Exporteren' ,
com_endpoint_save_as_preset : 'Opslaan als voorinstelling' ,
com_endpoint_presets_clear_warning :
'Weet u zeker dat u alle voorinstellingen wilt wissen? Dit is onomkeerbaar.' ,
com_endpoint_not_implemented : 'Niet geïmplementeerd' ,
com_endpoint_no_presets :
'Nog geen voorinstellingen, gebruik de instellingenknop om er een te maken' ,
com_endpoint_not_available : 'Geen eindpunt beschikbaar' ,
com_endpoint_view_options : 'Weergaveopties' ,
com_endpoint_save_convo_as_preset : 'Conversatie opslaan als voorinstelling' ,
com_endpoint_my_preset : 'Mijn voorinstelling' ,
com_endpoint_agent_model : 'Agentmodel (Aanbevolen: GPT-3,5)' ,
com_endpoint_completion_model : 'Voltooiingsmodel (Aanbevolen: GPT-4)' ,
com_endpoint_func_hover : 'Schakel het gebruik van plug-ins als OpenAI-functies in' ,
com_endpoint_skip_hover :
'Schakel het overslaan van de voltooiingsstap in, die het definitieve antwoord en gegenereerde stappen beoordeelt' ,
com_endpoint_config_key : 'API-sleutel instellen' ,
com_endpoint_config_key_for : 'API-sleutel instellen voor' ,
com_endpoint_config_key_name : 'Sleutel' ,
com_endpoint_config_value : 'Voer waarde in voor' ,
com_endpoint_config_key_name_placeholder : 'Stel eerst API-sleutel in' ,
com_endpoint_config_key_encryption : 'Uw sleutel wordt versleuteld en verwijderd op' ,
com_endpoint_config_key_expiry : 'het vervaltijdstip' ,
com_endpoint_config_key_import_json_key : 'Serviceaccount-JSON-sleutel importeren.' ,
com_endpoint_config_key_import_json_key_success :
'Serviceaccount-JSON-sleutel succesvol geïmporteerd' ,
com_endpoint_config_key_import_json_key_invalid :
'Ongeldige Serviceaccount-JSON-sleutel, heb je het juiste bestand geïmporteerd?' ,
com_endpoint_config_key_get_edge_key : 'Om uw toegangstoken voor Bing te krijgen, logt u in op' ,
com_endpoint_config_key_get_edge_key_dev_tool :
'Gebruik ontwikkelhulpmiddelen of een extensie terwijl u bent ingelogd op de site om de inhoud van de _U-cookie te kopiëren. Als dit mislukt, volg dan deze' ,
com_endpoint_config_key_edge_instructions : 'instructies' ,
com_endpoint_config_key_edge_full_key_string :
'om de volledige cookie-tekenreeksen te verstrekken.' ,
com_endpoint_config_key_chatgpt :
'Om uw toegangstoken voor ChatGPT \'Gratis versie\' te krijgen, logt u in op' ,
com_endpoint_config_key_chatgpt_then_visit : 'ga vervolgens naar' ,
com_endpoint_config_key_chatgpt_copy_token : 'Kopieer toegangstoken.' ,
com_endpoint_config_key_google_need_to : 'U moet' ,
com_endpoint_config_key_google_vertex_ai : 'Vertex AI inschakelen' ,
com_endpoint_config_key_google_vertex_api : 'API op Google Cloud, dan' ,
com_endpoint_config_key_google_service_account : 'Maak een serviceaccount' ,
com_endpoint_config_key_google_vertex_api_role :
'Zorg ervoor dat u op \'Maken en doorgaan\' klikt om ten minste de \'Vertex AI-gebruiker\'-rol te geven. Maak ten slotte een JSON-sleutel aan om hier te importeren.' ,
com_nav_auto_scroll : 'Automatisch scrollen naar Nieuwste bij openen' ,
com_nav_plugin_store : 'Plugin-opslag' ,
com_nav_plugin_search : 'Plugins zoeken' ,
com_nav_plugin_auth_error :
'Er trad een fout op bij het authenticeren van deze plugin. Probeer het opnieuw.' ,
com_nav_export_filename : 'Bestandsnaam' ,
com_nav_export_filename_placeholder : 'Stel de bestandsnaam in' ,
com_nav_export_type : 'Type' ,
com_nav_export_include_endpoint_options : 'Eindpuntopties opnemen' ,
com_nav_enabled : 'Ingeschakeld' ,
com_nav_not_supported : 'Niet ondersteund' ,
com_nav_export_all_message_branches : 'Alle berichtvertakkingen exporteren' ,
com_nav_export_recursive_or_sequential : 'Recursief of sequentieel?' ,
com_nav_export_recursive : 'Recursief' ,
com_nav_export_conversation : 'Conversatie exporteren' ,
🚀 feat: Shared Links (#2772)
* ✨ feat(types): add necessary types for shared link feature
* ✨ feat: add shared links functions to data service
Added functions for retrieving, creating, updating, and deleting shared links and shared messages.
* ✨ feat: Add useGetSharedMessages hook to fetch shared messages by shareId
Adds a new hook `useGetSharedMessages` which fetches shared messages based on the provided shareId.
* ✨ feat: Add share schema and data access functions to API models
* ✨ feat: Add share endpoint to API
The GET /api/share/${shareId} is exposed to the public, so authentication is not required. Other paths require authentication.
* ♻️ refactor(utils): generalize react-query cache manipulation functions
Introduces generic functions for manipulating react-query cache entries, marking a refinement in how query cache data is managed. It aims to enhance the flexibility and reusability of the cache interaction patterns within our application.
- Replaced specific index names with more generic terms in queries.ts, enhancing consistency across data handling functions.
- Introduced new utility functions in collection.ts for adding, updating, and deleting data entries in an InfiniteData<TCollection>. These utility functions (`addData`, `updateData`, `deleteData`, `findPage`) are designed to be re-usable across different data types and collections.
- Adapted existing conversation utility functions in convos.ts to leverage these new generic utilities.
* ✨ feat(shared-link): add functions to manipulate shared link cache list
implemented new utility functions to handle additions, updates, and deletions in the shared link cache list.
* ✨ feat: Add mutations and queries for shared links
* ✨ feat(shared-link): add `Share` button to conversation list
- Added a share button in each conversation in the conversation list.
- Implemented functionality where clicking the share button triggers a POST request to the API.
- The API checks if a share link was already created for the conversation today; if so, it returns the existing link.
- If no link was created for today, the API will create a new share link and return it.
- Each click on the share button results in a new API request, following the specification similar to ChatGPT's share link feature.
* ♻️ refactor(hooks): generalize useNavScrolling for broader use
- Modified `useNavScrolling` to accept a generic type parameter `TData`, allowing it to be used with different data structures besides `ConversationListResponse`.
- Updated instances in `Nav.tsx` and `ArchivedChatsTable.tsx` to explicitly specify `ConversationListResponse` as the type argument when invoking `useNavScrolling`.
* ✨ feat(settings): add shared links listing table with delete functionality in settings
- Integrated a delete button for each shared link in the table, allowing users to remove links as needed.
* ♻️ refactor(components): separate `EndpointIcon` from `Icon` component for standalone use
* ♻️ refactor: update useGetSharedMessages to return TSharedLink
- Modified the useGetSharedMessages hook to return not only a list of TMessage but also the TSharedLink itself.
- This change was necessary to support displaying the title and date in the Shared Message UI, which requires data from TSharedLink.
* ✨ feat(shared link): add UI for displaying shared conversations without authentication
- Implemented a new UI component to display shared conversations, designed to be accessible without requiring authentication.
- Reused components from the authenticated Messages module where possible. Copied and adapted components that could not be directly reused to fit the non-authenticated context.
* 🔧 chore: Add translations
Translate labels only. Messages remain in English as they are possibly subject to change.
* ♻️ refactor: add icon and tooltip props to EditMenuButton component
* moved icon and popover to arguments so that EditMenuButton can be reused.
* modified so that when a ShareButton is closed, the parent DropdownMenu is also closed.
* ♻️irefactor: added DropdownMenu for Export and Share
* ♻️ refactor: renamed component names more intuitive
* More accurate naming of the dropdown menu.
* When the export button is closed, the parent dropdown menu is also closed.
* 🌍 chore: updated translations
* 🐞 Fix: OpenID Profile Image Download (#2757)
* Add fetch requirement
Fixes - error: [openidStrategy] downloadImage: Error downloading image at URL "https://graph.microsoft.com/v1.0/me/photo/$value": TypeError: response.buffer is not a function
* Update openidStrategy.js
---------
Co-authored-by: Danny Avila <danacordially@gmail.com>
* 🚑 fix(export): Issue exporting Conversation with Assistants (#2769)
* 🚑 fix(export): use content as text if content is present in the message
If the endpoint is assistants, the text of the message goes into content, not message.text.
* refactor(ExportModel): TypeScript, remove unused code
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
* 📤style: export button icon (#2752)
* refactor(ShareDialog): logic and styling
* refactor(ExportAndShareMenu): imports order and icon update
* chore: imports
* chore: imports/render logic
* feat: message branching
* refactor: add optional config to useGetStartupConfig
* refactor: disable endpoints query
* chore: fix search view styling gradient in light mode
* style: ShareView gradient styling
* refactor(Share): use select queries
* style: shared link table buttons
* localization and dark text styling
* style: fix clipboard button layout shift app-wide and add localization for copy code
* support assistants message content in shared links, add useCopyToClipboard, add copy buttons to Search Messages and Shared Link Messages
* add localizations
* comparisons
---------
Co-authored-by: Yuichi Ohneda <ohneda@gmail.com>
Co-authored-by: bsu3338 <bsu3338@users.noreply.github.com>
Co-authored-by: Fuegovic <32828263+fuegovic@users.noreply.github.com>
2024-05-17 18:13:32 -04:00
com_nav_export : 'Exporteren' ,
com_nav_shared_links : 'Gedeelde links' ,
com_nav_shared_links_manage : 'Beheren' ,
com_nav_shared_links_empty : 'U hebt geen gedeeld links.' ,
com_nav_shared_links_name : 'Naam' ,
com_nav_shared_links_date_shared : 'Datum gedeeld' ,
2023-11-28 23:42:31 +01:00
com_nav_theme : 'Thema' ,
com_nav_theme_system : 'Systeem' ,
com_nav_theme_dark : 'Donker' ,
com_nav_theme_light : 'Licht' ,
2024-08-07 14:23:33 -04:00
com_nav_font_size : 'Lettertypegrootte' ,
2023-11-28 23:42:31 +01:00
com_nav_clear_all_chats : 'Alle chats wissen' ,
com_nav_confirm_clear : 'Wissen bevestigen' ,
com_nav_close_sidebar : 'Zijbalk sluiten' ,
com_nav_open_sidebar : 'Zijbalk openen' ,
com_nav_send_message : 'Bericht verzenden' ,
com_nav_log_out : 'Uitloggen' ,
com_nav_user : 'GEBRUIKER' ,
🚀feat: Archive conversations (#2590)
* 🔧chore: add internationalization labels for archive feature
* ✨ feat: Add function to useArchiveConversationMutation()
This commit adds a new mutation function `useArchiveConversationMutation()` for archiving conversations. This function takes the ID string of the conversation to be archived and returns a mutation result object. Upon successful archiving, it removes and refreshes the conversation from the query data cache.
While ChatGPT PATCHes the archived status by sending `{is_archived: true}` to the URL `/backend-api/conversation/$conversation_id`, this implementation uses the `dataService.updateConversation(payload)` with a POST method, aligning with the existing code conventions.
* ✨ feat(api): add is_archived field to Conversation schema and update getConvosByPage method
This commit adds a new field `is_archived` with a default value of false to the Conversation schema. It also modifies the `getConvosByPage` method within the Conversation API to adjust the query to only target conversations where `is_archived` is set to false or where the `is_archived` field does not exist. The function `getConvosQueried`, which returns conversations for a specified Conversation ID, was determined not to require consideration of whether `is_archived` is true or false, and thus was not modified.
* ♻️ refactor: add className prop to DotsIcon component
To enhance the versatility of the DotsIcon component, this commit introduces the ability to specify a className prop, allowing for greater customization.
* ✨ feat(ui): add Edit Button to group Title change and Conversation delete buttons
Added a new Edit Button to the conversations, similar to the ChatGPT UI, which groups options for editing the conversation title and deleting conversations. This grouping is accessible through a dialogue that appears when the three-dot icon is clicked.
* ♻️ refactor(ui): enhance Delete Button to accept className and label options
Enhanced the Delete Button component to accept a `className` for customization and an optional `appendLabel`. The DeleteButton component is used by both `Convo.tsx` and `Conversation.tsx`, but currently only `Convo.tsx` is active and `Conversation.tsx `is apparently not used; removing `Conversation.tsx` may eliminate the need for the `appendLabel` property in the future.
* ♻️ refactor(ui): enhance RenameButton to accept label options
Added the ability to optionally display labels; the Rename Button component is used by both `Convo.tsx` and `Conversation.tsx`, but currently only `Convo.tsx` is active and `Conversation.tsx `is apparently not used; removing `Conversation.tsx` may eliminate the need for the `appendLabel` property in the future.
* 🔧 chors: additional localization labels
* ♻️ refactor: change is_archived property of conversation to camelCase
* Refactor the is_archived property of conversation to camelCase (isArchived) to adhere to the existing code conventions
* Modify the function that retrieves conversations to accept the isArchived parameter
* ♻️ refactor: add archiveConversation mutation
I thought I could divert dataService.updateConversation, but added a new archiveConversation because the request types are different. It might be better to make them common, but to avoid side effects, I added a new function this time.
Added process to deleteConversationMutation to delete archived conversations
* ✨ feat: Add the function to hide a cancel button in DialogTemplate component
The Cancel button is not needed when displaying the archive list, so I made the Cancel button optional.
* ♻️ refactor: Add support for filtering archived conversations in Nav component
This commit modifies the Nav component to add the ability to filter out archived conversations when fetching data. This is done by adding `isArchived: false` to the query parameters for both the `useConversationsInfiniteQuery()` and `useSearchInfiniteQuery()` hooks, effectively excluding any archived conversations from the results returned.
* ♻️ refactor: add Tooltip to DeleteButton
* Add Tooltip to DeleteButton component
* Display Tooltip when DeleteButton only shows an Icon without text
* ✨ feat(ui): add ArchiveButton component for archiving conversations
To be compatible with the ChatGPT UI, no confirmation dialog is displayed when ArchiveButton is clicked. The basic behavior conforms to DeleteButton and RenameButton.
* ✨ feat(ui): add Archive button to list of conversations
Modify the Nav of the conversation list to include a dropdown that contains the Rename and Delete options, similar to the ChatGPT UI. Additionally, an Archive button has been added adjacent to the dropdown menu.
* ✨ feat: Add ArchivedChatsTable component
Adds the `ArchivedChatsTable` component, which displays a table of archived chats. It has been implemented to be as compatible with the ChatGPT UI as possible.
* 🚑 fix(tooltip): increase z-index to ensure visibility over Dialog
Resolve an issue where tooltips were not visible when displayed over a Dialog. The z-index of `DialogPrimitive.Portal` in `Dialog.tsx` is set to 999. Since the rationale for this value is unclear, the z-index of the tooltip has been increased to 1000 to guarantee its visibility above the Dialog component.
* 🔧 chors: add internationalization labels
2024-05-06 20:07:00 -07:00
com_nav_archived_chats : 'Gearchiveerde chats' ,
com_nav_archived_chats_manage : 'Beheren' ,
com_nav_archived_chats_empty : 'Geen gearchiveerde chats' ,
com_nav_archive_all_chats : 'Alle chats archiveren' ,
com_nav_archive_all : 'Alle archiveren' ,
com_nav_archive_name : 'Naam' ,
com_nav_archive_created_at : 'Gemaakt op' ,
2023-11-28 23:42:31 +01:00
com_nav_clear_conversation : 'Conversaties wissen' ,
com_nav_clear_conversation_confirm_message :
'Weet u zeker dat u alle conversaties wilt wissen? Dit is onomkeerbaar.' ,
com_nav_help_faq : 'Help & FAQ' ,
com_nav_settings : 'Instellingen' ,
com_nav_search_placeholder : 'Berichten doorzoeken' ,
2024-07-29 07:45:59 -07:00
com_nav_info_bookmarks_rebuild :
'Als het aantal bladwijzers onjuist is, bouw dan de bladwijzerinformatie opnieuw op. Het aantal bladwijzers zal worden herberekend en de gegevens zullen worden hersteld naar hun juiste staat.' ,
2023-11-28 23:42:31 +01:00
com_nav_setting_general : 'Algemeen' ,
com_nav_setting_data : 'Gegevensbesturing' ,
2024-10-24 10:48:57 -04:00
com_nav_lang_english : 'English' ,
com_nav_lang_chinese : '中文' ,
com_nav_lang_german : 'Deutsch' ,
com_nav_lang_spanish : 'Español' ,
com_nav_lang_french : 'Français ' ,
com_nav_lang_italian : 'Italiano' ,
com_nav_lang_polish : 'Polski' ,
com_nav_lang_brazilian_portuguese : 'Português Brasileiro' ,
com_nav_lang_russian : 'Русский' ,
com_nav_lang_japanese : '日本語' ,
com_nav_lang_swedish : 'Svenska' ,
com_nav_lang_korean : '한국어' ,
com_nav_lang_vietnamese : 'Tiếng Việt' ,
com_nav_lang_traditionalchinese : '繁體中文' ,
com_nav_lang_arabic : 'العربية' ,
com_nav_lang_turkish : 'Türkçe' ,
com_nav_lang_dutch : 'Nederlands' ,
com_nav_lang_indonesia : 'Indonesia' ,
com_nav_lang_hebrew : 'עברית' ,
com_nav_lang_finnish : 'Suomi' ,
2024-05-10 15:56:25 -04:00
} ;