* Add workspace MCP settings and token access controls. Ship MCP settings UI, OAuth revoke/list helpers, Passport deploy wiring, and workspace.token:mcp gating so assistants can connect without pulling in welcome/onboarding from the parent epic. Co-authored-by: Cursor <cursoragent@cursor.com> * Type MCP client config shapes instead of string checks. Encode http/config-root on each advanced client and tighten primary client ids so snippet generation does not branch on magic strings. Co-authored-by: Cursor <cursoragent@cursor.com> * Polish MCP settings follow-ups from review. Translate Ukrainian MCP copy, deep-link ChatGPT into connector creation, drop an unused asset and revoke arg, and assert PATs are rejected on the MCP endpoint. Co-authored-by: Cursor <cursoragent@cursor.com> * Harden MCP connected clients, revoke scope, and OAuth consent. List recoverable sessions with live refresh tokens, revoke only PATs, throttle registration alone, and block viewers from authorizing MCP. Co-authored-by: Cursor <cursoragent@cursor.com> * Simplify MCP OAuth route throttling to a single middleware group. Co-authored-by: Cursor <cursoragent@cursor.com> * Allow workspace viewers read-only MCP access with web policy writes. Mirror the web app: MCP connects on view + OAuth mcp:use, write tools enforce createPost/update/delete/manageAccounts/manageTeam, and demotion to Viewer keeps grants. Cover role denials, consent, and disconnect. Co-authored-by: Cursor <cursoragent@cursor.com> * Harden MCP tool authz with shared workspace helpers. Route ApiKey tools through AuthorizesMcpTool, fail closed on null user or policy argument, and resolve the current workspace before mutating. Co-authored-by: Cursor <cursoragent@cursor.com> * Drop redundant string casts on validated request data. Enum::from and validated() fields are already strings, so the casts add noise without changing behavior. Co-authored-by: Cursor <cursoragent@cursor.com> * Show only the current user's MCP connections in settings. Match API keys privacy: list and disconnect your own OAuth clients, not teammates' across the account. Co-authored-by: Cursor <cursoragent@cursor.com> * Cover LoadWorkspaceFromToken gaps and harden AuthorizesMcpTool tests. Co-authored-by: Cursor <cursoragent@cursor.com> * Drop redundant is_string guard before UpdatePostTool find. Co-authored-by: Cursor <cursoragent@cursor.com> * Refactor AppSidebar to always show MCP link and simplify route middleware definition in ai.php. The MCP link is now consistently displayed regardless of the current workspace state, and the route middleware syntax has been streamlined. * Refresh MCP connected clients with Inertia usePoll. Co-authored-by: Cursor <cursoragent@cursor.com> * Bump laravel/mcp to 0.9.1 and add the TryPost server icon. Requires laravel/boost 2.5 for the Icon attribute; expose images/trypost/icon.png on TryPostServer. Co-authored-by: Cursor <cursoragent@cursor.com> * Drop no-op ReflectionClass import in TryPostServerTest. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
385 lines
26 KiB
PHP
385 lines
26 KiB
PHP
<?php
|
||
|
||
return [
|
||
'title' => 'Ρυθμίσεις',
|
||
'description' => 'Διαχειριστείτε το προφίλ και τις ρυθμίσεις του λογαριασμού σας',
|
||
|
||
'hub' => [
|
||
'title' => 'Ρυθμίσεις',
|
||
'description' => 'Επιλέξτε τι θέλετε να διαχειριστείτε.',
|
||
'profile' => [
|
||
'title' => 'Προφίλ',
|
||
'description' => 'Ενημερώστε τα προσωπικά σας στοιχεία, τον κωδικό πρόσβασης και τις προτιμήσεις ειδοποιήσεων.',
|
||
],
|
||
'workspace' => [
|
||
'title' => 'Workspace',
|
||
'description' => 'Ρυθμίστε το workspace, τη μάρκα, τα μέλη και τα κλειδιά API σας.',
|
||
],
|
||
'account' => [
|
||
'title' => 'Λογαριασμός',
|
||
'description' => 'Διαχειριστείτε τα στοιχεία του λογαριασμού σας, τη χρήση και τη χρέωση.',
|
||
],
|
||
],
|
||
|
||
'nav' => [
|
||
'profile' => 'Προφίλ',
|
||
'authentication' => 'Ταυτοποίηση',
|
||
'workspace' => 'Workspace',
|
||
'members' => 'Μέλη',
|
||
'notifications' => 'Ειδοποιήσεις',
|
||
'billing' => 'Χρέωση',
|
||
],
|
||
|
||
'notifications' => [
|
||
'title' => 'Προτιμήσεις ειδοποιήσεων',
|
||
'heading' => 'Ειδοποιήσεις email',
|
||
'description' => 'Επιλέξτε ποιες ειδοποιήσεις email θέλετε να λαμβάνετε',
|
||
'post_published' => 'Δημοσίευση δημοσιεύτηκε',
|
||
'post_published_description' => 'Λάβετε email όταν η δημοσίευσή σας δημοσιευτεί με επιτυχία',
|
||
'post_failed' => 'Αποτυχία δημοσίευσης',
|
||
'post_failed_description' => 'Λάβετε email όταν η δημοσίευσή σας αποτύχει να δημοσιευτεί',
|
||
'account_disconnected' => 'Λογαριασμός αποσυνδέθηκε',
|
||
'account_disconnected_description' => 'Λάβετε email όταν ένας λογαριασμός κοινωνικού δικτύου αποσυνδεθεί',
|
||
'save' => 'Αποθήκευση προτιμήσεων',
|
||
],
|
||
|
||
'profile' => [
|
||
'title' => 'Ρυθμίσεις προφίλ',
|
||
'photo_heading' => 'Φωτογραφία προφίλ',
|
||
'photo_description' => 'Μεταφορτώστε μια φωτογραφία προφίλ',
|
||
'heading' => 'Στοιχεία προφίλ',
|
||
'description' => 'Ενημερώστε το όνομα και τη διεύθυνση email σας',
|
||
'avatar' => 'Άβαταρ',
|
||
'name' => 'Όνομα',
|
||
'name_placeholder' => 'Ονοματεπώνυμο',
|
||
'email' => 'Διεύθυνση email',
|
||
'email_placeholder' => 'Διεύθυνση email',
|
||
'email_unverified' => 'Η διεύθυνση email σας δεν έχει επαληθευτεί.',
|
||
'resend_verification' => 'Κάντε κλικ εδώ για επαναποστολή του email επαλήθευσης.',
|
||
'verification_sent' => 'Ένας νέος σύνδεσμος επαλήθευσης στάλθηκε στη διεύθυνση email σας.',
|
||
'save' => 'Αποθήκευση',
|
||
],
|
||
|
||
'authentication' => [
|
||
'title' => 'Ταυτοποίηση',
|
||
'page_title' => 'Ρυθμίσεις ταυτοποίησης',
|
||
'sessions' => [
|
||
'title' => 'Ενεργές συνεδρίες',
|
||
'description' => 'Αν παρατηρήσετε κάτι ύποπτο, αποσυνδεθείτε από τις άλλες συσκευές.',
|
||
'unknown_browser' => 'Άγνωστο πρόγραμμα περιήγησης',
|
||
'unknown_ip' => 'Άγνωστη IP',
|
||
'on' => 'στις',
|
||
'active_now' => 'Ενεργό τώρα',
|
||
'log_out_others' => 'Αποσύνδεση από άλλες συσκευές',
|
||
'modal_title' => 'Αποσύνδεση από άλλες συσκευές',
|
||
'modal_description_password' => 'Εισάγετε τον τρέχοντα κωδικό πρόσβασής σας για να επιβεβαιώσετε ότι θέλετε να αποσυνδεθείτε από άλλες συνεδρίες περιήγησης.',
|
||
'modal_description_email' => 'Πληκτρολογήστε τη διεύθυνση email σας για να επιβεβαιώσετε ότι θέλετε να αποσυνδεθείτε από άλλες συνεδρίες περιήγησης.',
|
||
'password_placeholder' => 'Τρέχων κωδικός πρόσβασης',
|
||
'email_placeholder' => 'Το email του λογαριασμού σας',
|
||
'cancel' => 'Ακύρωση',
|
||
'submit' => 'Αποσύνδεση από άλλες συσκευές',
|
||
'email_mismatch' => 'Η διεύθυνση email δεν ταιριάζει με τον λογαριασμό σας.',
|
||
'flash_logged_out' => 'Αποσυνδεθήκατε από τις άλλες συσκευές.',
|
||
],
|
||
'password' => [
|
||
'update_title' => 'Ενημέρωση κωδικού πρόσβασης',
|
||
'set_title' => 'Ορισμός κωδικού πρόσβασης',
|
||
'update_description' => 'Βεβαιωθείτε ότι ο λογαριασμός σας χρησιμοποιεί έναν μακρύ, τυχαίο κωδικό πρόσβασης για να παραμείνει ασφαλής.',
|
||
'set_description' => 'Προσθέστε έναν κωδικό πρόσβασης ώστε να μπορείτε να συνδέεστε χωρίς συνδεδεμένο πάροχο.',
|
||
'current_password' => 'Τρέχων κωδικός πρόσβασης',
|
||
'new_password' => 'Νέος κωδικός πρόσβασης',
|
||
'confirm_password' => 'Επιβεβαίωση κωδικού',
|
||
'save' => 'Αποθήκευση κωδικού',
|
||
'set' => 'Ορισμός κωδικού',
|
||
],
|
||
'providers' => [
|
||
'title' => 'Συνδεδεμένοι λογαριασμοί',
|
||
'description' => 'Συνδεθείτε ταχύτερα με αυτούς τους συνδεδεμένους παρόχους.',
|
||
'connected' => 'Συνδεδεμένος',
|
||
'not_connected' => 'Μη συνδεδεμένος',
|
||
'connect' => 'Σύνδεση',
|
||
'disconnect' => 'Αποσύνδεση',
|
||
'flash_disconnected' => 'Ο πάροχος :provider αποσυνδέθηκε με επιτυχία.',
|
||
'flash_connected' => 'Ο πάροχος :provider συνδέθηκε με επιτυχία.',
|
||
'flash_already_linked' => 'Αυτός ο λογαριασμός :provider είναι ήδη συνδεδεμένος με άλλον χρήστη.',
|
||
'flash_cannot_disconnect' => 'Δεν μπορείτε να αποσυνδέσετε τη μοναδική σας μέθοδο σύνδεσης. Ορίστε πρώτα έναν κωδικό πρόσβασης ή συνδέστε άλλον πάροχο.',
|
||
],
|
||
],
|
||
|
||
'delete_account' => [
|
||
'heading' => 'Διαγραφή λογαριασμού',
|
||
'description' => 'Διαγράψτε τον λογαριασμό σας και όλους τους πόρους του',
|
||
'warning' => 'Προειδοποίηση',
|
||
'warning_message' => 'Προχωρήστε με προσοχή: αυτό δεν μπορεί να αναιρεθεί. Αν είστε κάτοχος αυτού του λογαριασμού, τα προσκεκλημένα μέλη θα διαγραφούν επίσης οριστικά.',
|
||
'button' => 'Διαγραφή λογαριασμού',
|
||
'modal_title' => 'Είστε βέβαιοι ότι θέλετε να διαγράψετε τον λογαριασμό σας;',
|
||
'modal_description_password' => 'Μόλις διαγραφεί ο λογαριασμός σας, όλοι οι πόροι και τα δεδομένα του θα διαγραφούν επίσης οριστικά. Αν είστε κάτοχος του λογαριασμού, τα προσκεκλημένα μέλη θα διαγραφούν επίσης οριστικά. Παρακαλούμε εισάγετε τον κωδικό πρόσβασής σας για επιβεβαίωση.',
|
||
'modal_description_email' => 'Μόλις διαγραφεί ο λογαριασμός σας, όλοι οι πόροι και τα δεδομένα του θα διαγραφούν επίσης οριστικά. Αν είστε κάτοχος του λογαριασμού, τα προσκεκλημένα μέλη θα διαγραφούν επίσης οριστικά. Παρακαλούμε πληκτρολογήστε τη διεύθυνση email σας :email για επιβεβαίωση.',
|
||
'password' => 'Κωδικός πρόσβασης',
|
||
'password_placeholder' => 'Κωδικός πρόσβασης',
|
||
'email_placeholder' => 'Το email του λογαριασμού σας',
|
||
'email_mismatch' => 'Η διεύθυνση email δεν ταιριάζει με τον λογαριασμό σας.',
|
||
'cancel' => 'Ακύρωση',
|
||
'confirm' => 'Διαγραφή λογαριασμού',
|
||
],
|
||
|
||
'workspace' => [
|
||
'tabs' => [
|
||
'workspace' => 'Workspace',
|
||
'brand' => 'Μάρκα',
|
||
'users' => 'Μέλη',
|
||
'api_keys' => 'Κλειδιά API',
|
||
'mcp' => 'MCP',
|
||
],
|
||
'title' => 'Ρυθμίσεις workspace',
|
||
'logo_heading' => 'Λογότυπο workspace',
|
||
'logo_description' => 'Μεταφορτώστε ένα λογότυπο για το workspace σας',
|
||
'heading' => 'Όνομα workspace',
|
||
'description' => 'Ενημερώστε το όνομα του workspace σας',
|
||
'members_heading' => 'Μέλη',
|
||
'members_description' => 'Διαχειριστείτε τα μέλη και τις προσκλήσεις του workspace',
|
||
'name' => 'Όνομα',
|
||
'name_placeholder' => 'Το workspace μου',
|
||
'save' => 'Αποθήκευση',
|
||
'danger_description' => 'Μη αναστρέψιμες ενέργειες.',
|
||
'delete_warning' => 'Προειδοποίηση',
|
||
'delete_title' => 'Διαγραφή αυτού του workspace',
|
||
'delete_description' => 'Διαγράφει οριστικά αυτό το workspace και ό,τι περιέχει — αναρτήσεις, συνδεδεμένους λογαριασμούς και μέσα. Θα χρεώνεστε για ένα λιγότερο workspace.',
|
||
'delete_description_self_hosted' => 'Διαγράφει οριστικά αυτό το workspace, τις αναρτήσεις, τους συνδεδεμένους λογαριασμούς και τα μέσα.',
|
||
'delete_only_description' => 'Δεν μπορείτε να διαγράψετε το μοναδικό σας workspace. Ακυρώστε τη συνδρομή στη χρέωση για να σταματήσετε να πληρώνετε, ή διαγράψτε τον λογαριασμό σας στην Επαλήθευση για να ακυρώσετε τη χρέωση και να αφαιρέσετε τα πάντα οριστικά.',
|
||
'delete_go_to_billing' => 'Μετάβαση στη χρέωση',
|
||
'delete_go_to_delete_account' => 'Διαγραφή λογαριασμού',
|
||
'delete_members_warning' => '{1}:count άλλο μέλος θα χάσει την πρόσβαση. Τα μέλη χωρίς άλλο workspace στο TryPost θα διαγραφούν οριστικά.|[2,*]:count άλλα μέλη θα χάσουν την πρόσβαση. Τα μέλη χωρίς άλλο workspace στο TryPost θα διαγραφούν οριστικά.',
|
||
'delete_action' => 'Διαγραφή workspace',
|
||
'delete_cancel' => 'Ακύρωση',
|
||
'delete_confirm_title' => 'Διαγραφή workspace;',
|
||
'delete_confirm_description' => 'Αυτό διαγράφει οριστικά το workspace και όλα τα δεδομένα του. Η χρέωσή σας θα ενημερωθεί ώστε να αντικατοπτρίζει ένα λιγότερο workspace.',
|
||
'delete_confirm_description_self_hosted' => 'Αυτό διαγράφει οριστικά το workspace και όλα τα δεδομένα του.',
|
||
],
|
||
|
||
'brand' => [
|
||
'title' => 'Μάρκα',
|
||
'description' => 'Ρυθμίστε την ταυτότητα της μάρκας σας για περιεχόμενο που δημιουργεί το AI.',
|
||
'name' => 'Όνομα workspace',
|
||
'name_placeholder' => 'Η μάρκα μου',
|
||
'website' => 'Ιστότοπος',
|
||
'website_placeholder' => 'https://yourbrand.com',
|
||
'brand_description' => 'Περιγραφή',
|
||
'brand_description_placeholder' => 'Πείτε μας για τη μάρκα σας, τι κάνετε και ποιο είναι το κοινό σας...',
|
||
'voice' => 'Φωνή μάρκας',
|
||
'voice_description' => 'Επιλέξτε τα χαρακτηριστικά που ορίζουν πώς ακούγεται το περιεχόμενό σας.',
|
||
'voice_group' => [
|
||
'pov' => 'Οπτική γωνία',
|
||
'formality' => 'Επισημότητα',
|
||
'energy' => 'Ενέργεια',
|
||
'humor' => 'Χιούμορ',
|
||
'attitude' => 'Στάση',
|
||
'warmth' => 'Θερμότητα',
|
||
'confidence' => 'Αυτοπεποίθηση',
|
||
'style' => 'Ύφος',
|
||
],
|
||
'voice_trait' => [
|
||
'first_person' => 'Πρώτο πρόσωπο',
|
||
'second_person' => 'Δεύτερο πρόσωπο (εσείς)',
|
||
'third_person' => 'Τρίτο πρόσωπο',
|
||
'formal' => 'Επίσημο',
|
||
'balanced' => 'Ισορροπημένο',
|
||
'casual' => 'Ανεπίσημο',
|
||
'calm' => 'Ήρεμο',
|
||
'moderate' => 'Μέτριο',
|
||
'enthusiastic' => 'Ενθουσιώδες',
|
||
'vibrant' => 'Ζωντανό',
|
||
'serious' => 'Σοβαρό',
|
||
'dry' => 'Ξηρό / υπαινικτικό',
|
||
'witty' => 'Πνευματώδες',
|
||
'playful' => 'Παιχνιδιάρικο',
|
||
'respectful' => 'Με σεβασμό',
|
||
'even_handed' => 'Αμερόληπτο',
|
||
'bold' => 'Τολμηρό',
|
||
'provocative' => 'Προκλητικό',
|
||
'neutral' => 'Ουδέτερο',
|
||
'friendly' => 'Φιλικό',
|
||
'empathetic' => 'Με ενσυναίσθηση',
|
||
'humble' => 'Ταπεινό',
|
||
'confident' => 'Με αυτοπεποίθηση',
|
||
'assertive' => 'Δυναμικό',
|
||
'direct' => 'Άμεσο',
|
||
'concise' => 'Περιεκτικό',
|
||
'transparent' => 'Διαφανές',
|
||
'no_hype' => 'Χωρίς υπερβολές',
|
||
'practical' => 'Πρακτικό',
|
||
'data_driven' => 'Βασισμένο σε δεδομένα',
|
||
'storytelling' => 'Αφηγηματικό',
|
||
'inspirational' => 'Εμπνευστικό',
|
||
'educational' => 'Εκπαιδευτικό',
|
||
'technical' => 'Τεχνικό',
|
||
'minimalist' => 'Λίγα emoji',
|
||
],
|
||
'brand_color' => 'Χρώμα μάρκας',
|
||
'background_color' => 'Χρώμα φόντου',
|
||
'text_color' => 'Χρώμα κειμένου',
|
||
'font' => 'Γραμματοσειρά',
|
||
'image_style' => 'Ύφος εικόνας',
|
||
'image_style_description' => 'Οπτικό ύφος που εφαρμόζεται κατά τη δημιουργία εικόνων slide και εξωφύλλου για δημοσιεύσεις AI.',
|
||
'image_style_cinematic' => 'Κινηματογραφικό',
|
||
'image_style_illustration' => 'Εικονογράφηση',
|
||
'image_style_isometric_3d' => 'Ισομετρικό',
|
||
'image_style_cartoon' => 'Καρτούν',
|
||
'image_style_typographic' => 'Τυπογραφικό',
|
||
'image_style_infographic' => 'Infographic',
|
||
'image_style_minimalist' => 'Μινιμαλιστικό',
|
||
'image_style_mockup' => 'Mockup',
|
||
'content_language' => 'Γλώσσα περιεχομένου',
|
||
'content_language_description' => 'Γλώσσα που χρησιμοποιείται για λεζάντες, hashtags και οποιοδήποτε κείμενο μέσα σε εικόνες ή βίντεο που δημιουργεί το AI.',
|
||
'font_placeholder' => 'Επιλογή γραμματοσειράς…',
|
||
'font_search' => 'Αναζήτηση γραμματοσειράς…',
|
||
'font_empty' => 'Δεν βρέθηκαν γραμματοσειρές.',
|
||
'language_placeholder' => 'Επιλογή γλώσσας…',
|
||
'language_search' => 'Αναζήτηση γλώσσας…',
|
||
'language_empty' => 'Δεν βρέθηκε γλώσσα.',
|
||
|
||
],
|
||
|
||
'members' => [
|
||
'title' => 'Μέλη',
|
||
'heading' => 'Μέλη ομάδας',
|
||
'description' => 'Διαχειριστείτε τα μέλη και τις προσκλήσεις για αυτό το workspace',
|
||
|
||
'cancel' => 'Ακύρωση',
|
||
'remove' => 'Αφαίρεση',
|
||
'make_role' => 'Ορισμός ως :role',
|
||
|
||
'invite' => [
|
||
'title' => 'Πρόσκληση μέλους',
|
||
'description' => 'Στείλτε μια πρόσκληση email για να προσθέσετε συνεργάτες',
|
||
'email' => 'Email',
|
||
'email_placeholder' => 'collaborator@email.com',
|
||
'role' => 'Ρόλος',
|
||
'role_placeholder' => 'Επιλέξτε έναν ρόλο',
|
||
'submit' => 'Αποστολή πρόσκλησης',
|
||
],
|
||
|
||
'pending' => [
|
||
'title' => 'Εκκρεμείς προσκλήσεις',
|
||
'description' => 'Προσκλήσεις που αναμένουν αποδοχή',
|
||
'empty' => 'Δεν υπάρχουν εκκρεμείς προσκλήσεις',
|
||
],
|
||
|
||
'list' => [
|
||
'title' => 'Μέλη',
|
||
'description' => 'Άτομα με πρόσβαση σε αυτό το workspace',
|
||
'empty' => 'Δεν υπάρχουν μέλη εκτός από τον κάτοχο',
|
||
],
|
||
|
||
'remove_modal' => [
|
||
'title' => 'Αφαίρεση μέλους',
|
||
'description' => 'Είστε βέβαιοι ότι θέλετε να αφαιρέσετε αυτό το μέλος από το workspace; Θα χάσει την πρόσβαση σε όλους τους πόρους του workspace.',
|
||
'action' => 'Αφαίρεση μέλους',
|
||
],
|
||
|
||
'cancel_invite_modal' => [
|
||
'title' => 'Ακύρωση πρόσκλησης',
|
||
'description' => 'Είστε βέβαιοι ότι θέλετε να ακυρώσετε αυτή την πρόσκληση;',
|
||
'action' => 'Ακύρωση πρόσκλησης',
|
||
],
|
||
|
||
'roles' => [
|
||
'owner' => 'Κάτοχος',
|
||
'admin' => 'Διαχειριστής',
|
||
'member' => 'Μέλος',
|
||
'viewer' => 'Θεατής',
|
||
],
|
||
|
||
'errors' => [
|
||
'invite_exists' => 'Υπάρχει ήδη πρόσκληση για αυτό το email.',
|
||
'email_belongs_to_account' => 'Αυτό το email ανήκει ήδη σε άλλο λογαριασμό TryPost. Ζητήστε ένα ειδικό email εργασίας.',
|
||
],
|
||
|
||
'flash' => [
|
||
'invite_sent' => 'Η πρόσκληση στάλθηκε με επιτυχία!',
|
||
'invite_deleted' => 'Η πρόσκληση διαγράφηκε.',
|
||
'member_removed' => 'Το μέλος αφαιρέθηκε με επιτυχία.',
|
||
'role_updated' => 'Ο ρόλος του μέλους ενημερώθηκε.',
|
||
'wrong_email' => 'Αυτή η πρόσκληση αφορά διαφορετική διεύθυνση email.',
|
||
'already_member' => 'Είστε ήδη μέλος αυτού του workspace.',
|
||
'invite_accepted' => 'Καλώς ήρθατε! Είστε πλέον μέλος του workspace.',
|
||
'invite_workspace_gone' => 'Αυτή η πρόσκληση δεν ισχύει πλέον επειδή το workspace διαγράφηκε.',
|
||
'invite_declined' => 'Η πρόσκληση απορρίφθηκε.',
|
||
],
|
||
],
|
||
|
||
'account' => [
|
||
'tabs' => [
|
||
'account' => 'Λογαριασμός',
|
||
'usage' => 'Χρήση',
|
||
'billing' => 'Χρέωση',
|
||
],
|
||
'title' => 'Ρυθμίσεις λογαριασμού',
|
||
'description' => 'Διαχειριστείτε το όνομα του λογαριασμού σας και το email χρέωσης',
|
||
'name' => 'Όνομα λογαριασμού',
|
||
'name_placeholder' => 'Η εταιρεία μου',
|
||
'billing_email' => 'Email χρέωσης',
|
||
'billing_email_placeholder' => 'billing@company.com',
|
||
'billing_email_hint' => 'Αυτό το email θα χρησιμοποιηθεί για τιμολόγια και επικοινωνίες χρέωσης από το Stripe.',
|
||
'submit' => 'Αποθήκευση',
|
||
],
|
||
|
||
'flash' => [
|
||
'account_updated' => 'Ο λογαριασμός ενημερώθηκε με επιτυχία!',
|
||
'profile_updated' => 'Το προφίλ ενημερώθηκε με επιτυχία!',
|
||
'password_updated' => 'Ο κωδικός πρόσβασης ενημερώθηκε με επιτυχία!',
|
||
'workspace_updated' => 'Οι ρυθμίσεις ενημερώθηκαν με επιτυχία!',
|
||
'photo_updated' => 'Η φωτογραφία ενημερώθηκε με επιτυχία!',
|
||
'photo_deleted' => 'Η φωτογραφία αφαιρέθηκε με επιτυχία!',
|
||
'delete_failed_billing' => 'Δεν μπορέσαμε να ακυρώσουμε τη συνδρομή σας στον πάροχο χρέωσης. Δεν διαγράφηκε τίποτα. Δοκιμάστε ξανά ή επικοινωνήστε με την υποστήριξη.',
|
||
'logo_updated' => 'Το λογότυπο μεταφορτώθηκε με επιτυχία!',
|
||
'logo_deleted' => 'Το λογότυπο αφαιρέθηκε με επιτυχία!',
|
||
'notifications_updated' => 'Οι προτιμήσεις ειδοποιήσεων ενημερώθηκαν!',
|
||
],
|
||
|
||
'api_keys' => [
|
||
'title' => 'Κλειδιά API',
|
||
'page_title' => 'Κλειδιά API',
|
||
'heading' => 'Κλειδιά API',
|
||
'description' => 'Διαχειριστείτε κλειδιά API για προγραμματιστική πρόσβαση στο workspace σας.',
|
||
'create' => 'Δημιουργία κλειδιού API',
|
||
'copy' => 'Αντιγραφή',
|
||
'new_token_message' => 'Το νέο σας κλειδί API δημιουργήθηκε. Αντιγράψτε το τώρα — δεν θα μπορέσετε να το δείτε ξανά.',
|
||
'table' => [
|
||
'name' => 'Όνομα',
|
||
'key' => 'Κλειδί',
|
||
'status' => 'Κατάσταση',
|
||
'expires' => 'Λήγει',
|
||
'last_used' => 'Τελευταία χρήση',
|
||
'never' => 'Ποτέ',
|
||
],
|
||
'actions' => [
|
||
'copy_id' => 'Αντιγραφή ID κλειδιού API',
|
||
'copy_id_success' => 'Το ID κλειδιού API αντιγράφηκε στο πρόχειρο',
|
||
'delete' => 'Διαγραφή',
|
||
],
|
||
'empty' => [
|
||
'title' => 'Δεν υπάρχουν κλειδιά API ακόμη',
|
||
'description' => 'Δημιουργήστε ένα κλειδί API για προγραμματιστική πρόσβαση στο workspace σας.',
|
||
],
|
||
'delete_modal' => [
|
||
'title' => 'Διαγραφή κλειδιού API',
|
||
'description' => 'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το κλειδί API; Οποιεσδήποτε εφαρμογές χρησιμοποιούν αυτό το κλειδί θα χάσουν αμέσως την πρόσβαση.',
|
||
'action' => 'Διαγραφή κλειδιού API',
|
||
],
|
||
'create_dialog' => [
|
||
'title' => 'Δημιουργία κλειδιού API',
|
||
'description' => 'Δημιουργήστε ένα νέο κλειδί API για προγραμματιστική πρόσβαση στο workspace σας.',
|
||
'name' => 'Όνομα',
|
||
'name_placeholder' => 'π.χ. Production API Key',
|
||
'expires' => 'Ημερομηνία λήξης (προαιρετικό)',
|
||
'expires_placeholder' => 'Χωρίς λήξη',
|
||
'submit' => 'Δημιουργία',
|
||
'cancel' => 'Ακύρωση',
|
||
],
|
||
'flash' => [
|
||
'created' => 'Το κλειδί API δημιουργήθηκε με επιτυχία!',
|
||
'deleted' => 'Το κλειδί API διαγράφηκε με επιτυχία!',
|
||
],
|
||
],
|
||
];
|