trypost/lang/nl/posts.php
Paulo Castellano 27287aa130
fix: Pinterest video processing timeout — longer poll + retry (#246)
* fix: give Pinterest video processing more time and retry on timeout

A valid ~54s video pin failed after ~90s of polling while Pinterest was
still processing. Extend the poll window to ~5 minutes and treat timeout
as platform unavailable so PublishToSocialPlatform reschedules instead of
failing the post on the first attempt.

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: use Laravel Sleep for Pinterest media processing polls

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: inline Pinterest video processing poll constants

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: map Pinterest media upload statuses to an enum

Use the official MediaUploadStatus values (registered, processing,
succeeded, failed) instead of comparing raw strings in the publisher.

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: trim Pinterest media processing docblock

* fix: cap platform-unavailable retries and recover stuck retrying posts

Stop infinite reschedules after 6 attempts with a user-safe failure
message, keep technical detail in error_context, recover Retrying
platforms in social:recover-stuck-posts, and drop unused isTerminal().

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: remove unused failedCount in RecoverStuckPosts

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: skip final Pinterest poll sleep and localize recover timeout

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: raise publish job timeout headroom and ignore already-failed platforms

Give social publish jobs 15 minutes so Pinterest media polling fits under
the worker limit, bump Horizon/redis retry_after above that timeout, and
skip handle/failed when the platform is already Failed so delayed jobs
cannot revive posts recovered by social:recover-stuck-posts.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: restore social-publishing and ai-assistant horizon supervisors

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: harden Pinterest 401 handling, unique publish jobs, and recover JSON

Treat media-status 401 as TokenExpired, make PublishToSocialPlatform
unique per platform+attempt so retries still queue, and persist recover
error_context via Eloquent casts instead of manual json_encode.

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: mass-update stuck post platforms without per-row each

Eloquent query updates already bind JSON arrays correctly here, so one
UPDATE is enough — no manual json_encode and no N model writes.

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: simplify Pinterest media processing poll loop

Co-authored-by: Cursor <cursoragent@cursor.com>

* refactor: simplify publish job retry and terminal status checks

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: do not finalize posts while platforms are still retrying

Co-authored-by: Cursor <cursoragent@cursor.com>

* test: cover Pinterest timeout, unique jobs, and recover edge cases

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: retry Pinterest media poll on connection errors and tighten tests

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: remove ineffective TypeError import that breaks CI

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-06 20:49:37 -03:00

693 lines
32 KiB
PHP

<?php
return [
'title' => 'Posts',
'search' => 'Posts zoeken...',
'all_posts' => 'Alle posts',
'new_post' => 'Nieuwe post',
'no_posts' => 'Geen posts gevonden',
'no_search_results' => 'Geen posts komen overeen met je zoekopdracht',
'try_different_search' => 'Probeer een ander zoekwoord of wis de zoekopdracht.',
'start_creating' => 'Begin met het aanmaken van je eerste post.',
'filter_by_label' => 'Filteren op label',
'label_search_placeholder' => 'Labels zoeken...',
'no_labels' => 'Geen labels gevonden.',
'clear_label_filter' => 'Labelfilter wissen',
'table' => [
'post' => 'Post',
'status' => 'Status',
'content' => 'Inhoud',
'platforms' => 'Platforms',
'labels' => 'Labels',
'scheduled_at' => 'Datum',
'actions' => '',
],
'manage_posts' => 'Beheer al je posts',
'delete_confirm' => 'Weet je zeker dat je deze post wilt verwijderen?',
'by' => 'door',
'actions' => [
'view' => 'Post bekijken',
'delete' => 'Verwijderen',
'duplicate' => 'Dupliceren',
'copy_id' => 'ID kopiëren',
'copied' => 'ID gekopieerd naar klembord',
],
'form' => [
'post_type' => 'Posttype',
'board' => 'Bord',
'select_board' => 'Selecteer een bord',
'search_board' => 'Bord zoeken...',
'no_board_found' => 'Geen bord gevonden',
'media' => 'Media',
'min' => 'Min',
'uploading' => 'Uploaden...',
'drop_to_upload' => 'Neerzetten om te uploaden',
'drag_and_drop' => 'Sleep hierheen of klik om te uploaden',
'photos_and_videos' => 'Foto\'s en video\'s',
'photos_only' => 'Alleen foto\'s',
'videos_only' => 'Alleen video\'s',
'drag_to_reorder' => 'Sleep om de volgorde te wijzigen',
'caption' => 'Bijschrift',
'write_caption' => 'Schrijf je bijschrift...',
'content_exceeds_platform' => ':platform: :over tekens te lang (max. :limit).',
'tiktok' => [
'settings' => 'TikTok-instellingen',
'variant_label' => 'Posttype',
'variant' => [
'video' => 'Video',
'photo' => 'Fotocarrousel',
],
'posting_to' => 'Posten naar',
'privacy_level' => 'Wie kan deze video zien?',
'privacy_placeholder' => 'Selecteer wie deze post kan bekijken',
'privacy' => [
'public' => 'Openbaar voor iedereen',
'friends' => 'Vrienden die je terug volgt',
'followers' => 'Volgers',
'private' => 'Alleen ik',
'private_disabled_branded' => 'De zichtbaarheid van branded content kan niet op privé worden ingesteld.',
],
'privacy_hint' => 'De beschikbare opties zijn afhankelijk van je TikTok-accountinstellingen.',
'auto_add_music' => 'Automatisch muziek toevoegen',
'auto_add_music_hint' => 'Deze functie is alleen beschikbaar voor foto\'s. Er wordt standaardmuziek toegevoegd die je later kunt wijzigen.',
'yes' => 'Ja',
'no' => 'Nee',
'allow_users' => 'Gebruikers toestaan om:',
'comments' => 'Reageren',
'duet' => 'Duet',
'stitch' => 'Stitch',
'is_aigc' => 'Video gemaakt met AI',
'disclose' => 'Video-inhoud onthullen',
'disclose_hint' => 'Schakel in om te onthullen dat deze video goederen of diensten promoot in ruil voor iets van waarde. Je video kan jezelf, een derde partij of beide promoten.',
'promotional_organic_title' => 'Je foto/video wordt gelabeld als "Promotionele content".',
'promotional_paid_title' => 'Je foto/video wordt gelabeld als "Betaald partnerschap".',
'promotional_description' => 'Dit kan niet worden gewijzigd zodra je video is geplaatst.',
'compliance_incomplete' => 'Je moet aangeven of je content jezelf, een derde partij of beide promoot.',
'privacy_required' => 'Het TikTok-privacyniveau is vereist bij het publiceren.',
'branded_cleared_private' => 'De privacy is gewist omdat branded content niet privé kan zijn.',
'interaction_disabled_by_creator' => 'Uitgeschakeld in je TikTok-accountinstellingen',
'max_duration_exceeded' => 'De video is :duration s lang, maar dit account kan alleen video\'s tot :max s plaatsen.',
'processing_hint' => 'Na het publiceren kan het enkele minuten duren voordat de content is verwerkt en op je TikTok-profiel verschijnt.',
'brand_organic' => 'Je merk',
'brand_organic_hint' => 'Je promoot jezelf of je eigen merk. Deze video wordt geclassificeerd als Brand Organic.',
'brand_content' => 'Branded content',
'brand_content_hint' => 'Je promoot een ander merk of een derde partij. Deze video wordt geclassificeerd als Branded Content.',
'compliance' => [
'agree' => 'Door te plaatsen ga je akkoord met de',
'music_usage' => 'Bevestiging muziekgebruik',
'and' => 'en',
'branded_policy' => 'Branded Content Policy',
],
],
'instagram' => [
'settings' => 'Instagram-instellingen',
'posting_to' => 'Posten naar',
'variant_label' => 'Posttype',
'variant' => [
'feed' => 'Feedpost',
'reel' => 'Reel',
'story' => 'Story',
],
'aspect_label' => 'Beeldverhouding',
'aspect' => [
'square' => 'Vierkant (1:1)',
'portrait' => 'Portret (4:5)',
'landscape' => 'Liggend (16:9)',
'original' => 'Origineel',
],
],
'facebook' => [
'settings' => 'Facebook-instellingen',
'posting_to' => 'Posten naar',
'variant_label' => 'Posttype',
'variant' => [
'post' => 'Post',
'reel' => 'Reel',
'story' => 'Story',
],
'aspect_label' => 'Beeldverhouding',
'aspect' => [
'square' => 'Vierkant (1:1)',
'portrait' => 'Portret (4:5)',
'landscape' => 'Liggend (16:9)',
'original' => 'Origineel',
],
],
'linkedin' => [
'settings' => 'LinkedIn-instellingen',
'settings_page' => 'LinkedIn-pagina-instellingen',
'posting_to' => 'Posten naar',
'document_title' => 'Documenttitel',
'document_title_placeholder' => 'Getoond op je PDF-documentpost',
],
'pinterest' => [
'settings' => 'Pinterest-instellingen',
'posting_to' => 'Posten naar',
'variant_label' => 'Pintype',
'variant' => [
'pin' => 'Pin',
'video_pin' => 'Videopin',
'carousel' => 'Carrousel',
],
'board' => 'Bord',
'select_board' => 'Selecteer een bord',
'no_boards' => 'Geen Pinterest-borden gevonden. Maak er eerst een aan in je Pinterest-account.',
'boards_truncated' => 'Sommige borden konden niet worden geladen. Ontbreekt die van jou, open Pinterest en probeer opnieuw.',
'search_board' => 'Borden zoeken...',
'no_board_found' => 'Geen bord komt overeen met je zoekopdracht.',
'board_required' => 'Selecteer een Pinterest-bord om deze post te publiceren.',
'title' => 'Titel',
'title_placeholder' => 'Optionele pin-titel',
'link' => 'Bestemmingslink',
'link_placeholder' => 'https://voorbeeld.com',
'link_invalid' => 'Voer een geldige bestemmingslink in (http of https).',
'title_max' => 'Titel mag niet langer zijn dan 100 tekens.',
'link_max' => 'Bestemmingslink mag niet langer zijn dan 2048 tekens.',
],
'discord' => [
'settings' => 'Discord-instellingen',
'posting_to' => 'Posten naar',
'channel' => 'Kanaal',
'select_channel' => 'Selecteer een kanaal',
'loading_channels' => 'Kanalen laden…',
'search_channel' => 'Kanalen zoeken…',
'no_channels' => 'Geen kanalen gevonden.',
'channel_required' => 'Selecteer een Discord-kanaal om deze post te publiceren.',
'mentions' => 'Vermeldingen',
'search_mention' => 'Vermeld een rol of lid…',
'embeds' => 'Embeds',
'embed' => 'Embed',
'add_embed' => 'Embed toevoegen',
'embed_title' => 'Embed-titel',
'embed_description' => 'Embed-omschrijving',
'embed_url' => 'Embed-URL',
'embed_image' => 'Afbeeldings-URL',
'embed_color' => 'Kleur',
],
'warnings' => [
'no_variant' => 'Kies een posttype om door te gaan.',
'requires_media' => 'Dit posttype vereist ten minste één afbeelding of video.',
'max_files_exceeded' => 'Dit posttype accepteert maximaal :max mediabestanden (je hebt er :current).',
'min_files_required' => 'Dit posttype vereist ten minste :min mediabestanden (je hebt er :current).',
'no_video_allowed' => 'Dit posttype accepteert geen video\'s.',
'no_image_allowed' => 'Dit posttype accepteert alleen video\'s.',
'no_document_allowed' => 'Dit posttype accepteert geen PDF-documenten.',
'no_mixed_media' => 'Afbeeldingen en een video kunnen niet in dezelfde post worden gecombineerd.',
'document_not_alone' => 'Een PDF moet apart worden geplaatst, zonder andere afbeeldingen of video\'s.',
'gif_not_allowed' => 'Dit platform accepteert geen GIF. Verwijder de GIF of kies een ander netwerk.',
'image_too_large' => 'De afbeelding overschrijdt de limiet van :max voor dit posttype (die van jou is :current).',
'video_too_large' => 'De video overschrijdt de limiet van :max voor dit posttype (die van jou is :current).',
'document_too_large' => 'De PDF overschrijdt de limiet van :max voor dit posttype (die van jou is :current).',
'video_too_long' => 'De video is :current lang, maar dit posttype staat maximaal :max toe.',
'aspect_ratio_too_narrow' => 'Beeldverhouding :current is te hoog voor dit posttype (min. :min).',
'aspect_ratio_too_wide' => 'Beeldverhouding :current is te breed voor dit posttype (max. :max).',
],
],
'status' => [
'pending' => 'In afwachting',
'draft' => 'Concept',
'scheduled' => 'Gepland',
'publishing' => 'Publiceren',
'retrying' => 'Opnieuw proberen',
'published' => 'Gepubliceerd',
'partially_published' => 'Gedeeltelijk gepubliceerd',
'failed' => 'Mislukt',
],
'descriptions' => [
'draft' => 'Posts die wachten om te worden ingepland',
'scheduled' => 'Posts die zijn ingepland om te worden gepubliceerd',
'published' => 'Posts die al zijn gepubliceerd',
],
'ai' => [
'generate' => [
'button_tooltip' => 'Genereren met AI',
'title' => 'Post genereren met AI',
'description' => 'Beschrijf waar de post over moet gaan. De AI gebruikt je merkcontext om hem te schrijven.',
'prompt_label' => 'Waar gaat deze post over?',
'prompt_placeholder' => 'bijv. Kondig onze nieuwe functie voor beeldgeneratie voor carrousels aan',
'preview_label' => 'Voorbeeld',
'start' => 'Genereren',
'apply' => 'Gebruik deze inhoud',
'retry' => 'Opnieuw proberen',
'cancel' => 'Annuleren',
],
'review' => [
'button_tooltip' => 'Controleren met AI',
'title' => 'Post controleren met AI',
'description' => 'AI controleert op grammatica, spelling en duidelijkheid. Pas de suggesties toe waar je het mee eens bent.',
'loading' => 'Je tekst controleren...',
'no_issues' => 'Geen problemen gevonden. Ziet er goed uit.',
'original' => 'Origineel',
'suggestion' => 'Suggestie',
'apply' => 'Toepassen',
'apply_all' => 'Alles toepassen',
'applied' => 'Toegepast',
'cancel' => 'Annuleren',
],
'image_regenerate' => [
'button' => 'Aanpassen',
'title' => 'AI-afbeelding aanpassen',
'description' => 'Beschrijf de correctie. De nieuwe afbeelding vervangt de huidige en behoudt zijn positie in de carrousel.',
'instruction_label' => 'Instructie',
'instruction_placeholder' => 'bijv. Herstel de typefout in de kop en maak de achtergrond lichter.',
'processing' => 'Afbeelding opnieuw genereren... dit kan enkele seconden duren.',
'submit' => 'Afbeelding opnieuw genereren',
'cancel' => 'Annuleren',
'success' => 'Afbeelding bijgewerkt. De nieuwe versie heeft de vorige in je post vervangen.',
'fallback_title' => 'Verbeter deze afbeeldingstekst',
'errors' => [
'required' => 'Instructie is vereist.',
'start_failed' => 'Het opnieuw genereren kon niet worden gestart.',
'unavailable' => 'Deze afbeelding kan op dit moment niet opnieuw worden gegenereerd.',
'timeout' => 'Het opnieuw genereren duurt langer dan verwacht. Probeer het zo dadelijk opnieuw.',
'media_not_found' => 'Media-item niet gevonden.',
'not_ai_media' => 'Alleen AI-gegenereerde media kan opnieuw worden gegenereerd.',
],
],
'templates' => [
'image_card' => [
'name' => 'Afbeeldingspost',
'description' => 'AI-afbeelding met een kop en bijschrift.',
],
'carousel' => [
'name' => 'Carrousel',
'description' => 'Carrousel met meerdere slides en een bijschrift.',
],
'tweet_card' => [
'name' => 'Tweet-kaart',
'description' => 'Je post in de stijl van een X/Twitter-post.',
],
'tweet_card_image' => [
'name' => 'Tweet-kaart met foto',
'description' => 'Je post als een X/Twitter-kaart over een vervaagde foto.',
],
],
],
'show' => [
'title' => 'Postdetails',
'edit' => 'Bewerken',
'back' => 'Terug',
'no_content' => 'Geen bijschrift',
'platforms' => 'Platforms',
'no_platforms' => 'Geen platforms geselecteerd.',
'view_on_platform' => 'Bekijken op platform',
'published_on' => 'Gepubliceerd op :date',
'scheduled_for' => 'Gepland voor :date',
'draft' => 'Concept',
'status_pending' => 'In afwachting',
'metrics' => 'Statistieken',
'metrics_loading' => 'Statistieken laden…',
'metrics_unavailable' => 'Statistieken zijn voor dit platform nog niet beschikbaar.',
'metrics_empty' => 'Geen statistieken teruggegeven.',
],
'edit' => [
'title' => 'Post bewerken',
'view_title' => 'Post bekijken',
'labels' => 'Labels',
'no_labels' => 'Nog geen labels aangemaakt',
'schedule' => 'Plannen',
'pick_time' => 'Kies tijd',
'pick_time_past' => 'Kies een datum en tijd in de toekomst.',
'post_now' => 'Nu posten',
'time' => 'Tijd',
'cancel' => 'Annuleren',
'delete' => 'Verwijderen',
'schedule_for' => 'Plannen voor',
'schedule_date' => 'Plandatum',
'unschedule' => 'Planning opheffen',
'saving' => 'Opslaan...',
'saved' => 'Opgeslagen',
'draft' => 'Concept',
'media' => 'Media',
'add_media' => 'Media toevoegen',
'caption' => 'Bijschrift',
'caption_placeholder' => 'Schrijf je bijschrift...',
'compose_title' => 'Een post maken',
'compose_subtitle' => 'Stel je bericht op en voeg media toe',
'preview_empty' => [
'title' => 'Geen platform geselecteerd',
'description' => 'Selecteer een platform om naar te publiceren om het voorbeeld te zien.',
],
'drop_zone_title' => 'Media toevoegen',
'drop_zone_subtitle' => 'Sleep bestanden hierheen of klik om te bladeren',
'add' => 'Toevoegen',
'publish_to' => 'Publiceren naar',
'organize' => 'Organiseren',
'signatures' => 'Handtekeningen',
'view_on_platform' => 'Bekijken op platform',
'platform_status' => 'Platformstatus',
'compliance_incomplete' => 'Sommige platforminstellingen zijn onvolledig of niet compatibel met de bijgevoegde media.',
'compliance' => [
'requires_content_or_media' => 'Voeg tekst of media toe om te publiceren.',
'requires_media' => 'Voeg een afbeelding of video toe om hier te publiceren.',
'too_many_files' => 'Slechts :max bestand(en) toegestaan voor dit formaat.',
'too_few_files' => 'Voeg ten minste :min bestanden toe voor dit formaat.',
'no_videos' => 'Alleen afbeeldingen zijn toegestaan voor dit formaat.',
'no_images' => 'Alleen video\'s zijn toegestaan voor dit formaat.',
'no_mixed_media' => 'Afbeeldingen en video\'s kunnen niet in dezelfde post worden gecombineerd.',
'no_gifs' => 'GIFs worden hier niet ondersteund.',
'no_documents' => 'PDF-documenten worden niet ondersteund door dit formaat.',
'document_not_alone' => 'Een PDF moet apart worden geplaatst, zonder andere afbeeldingen of video\'s.',
'video_too_large' => 'De video overschrijdt de groottelimiet voor dit platform.',
'video_too_long' => 'De video moet korter zijn dan :seconds seconden voor dit formaat.',
'image_too_large' => 'De afbeelding overschrijdt de groottelimiet voor dit platform.',
'document_too_large' => 'De PDF overschrijdt de groottelimiet voor dit platform.',
'aspect_ratio_invalid' => 'De beeldverhouding wordt niet ondersteund door dit formaat.',
'no_content_type' => 'Kies een contenttype voor dit platform.',
'requires_text' => 'Voeg tekst toe — dit formaat heeft een titel nodig.',
],
'publishing' => 'Publiceren...',
'publishing_overlay_title' => 'Je post wordt gepubliceerd',
'publishing_overlay_subtitle' => 'Dit kan even duren. Je kunt deze pagina veilig verlaten.',
'scheduled_overlay_title' => 'Deze post is gepland',
'scheduled_overlay_subtitle' => 'Gepland voor :date. Hef eerst de planning op om wijzigingen aan te brengen.',
'unschedule_cta' => 'Planning opheffen om te bewerken',
'tabs' => [
'compose' => 'Opstellen',
'preview' => 'Voorbeeld',
'channels' => 'Kanalen',
'comments' => 'Reacties',
'comments_empty' => 'Nog geen reacties.',
],
'media_picker' => [
'title' => 'Kiezen uit galerij',
'search' => 'Media zoeken...',
'empty' => 'Nog geen media in je galerij',
'cancel' => 'Annuleren',
'add' => 'Toevoegen',
'add_count' => ':count toevoegen',
],
'alt_text' => [
'label' => 'Alt-tekst',
'edit' => 'Alt-tekst bewerken',
'placeholder' => 'Beschrijf deze afbeelding voor mensen die schermlezers gebruiken',
'hint' => 'Wordt gepubliceerd op platforms die afbeeldingsbeschrijvingen ondersteunen.',
'save' => 'Opslaan',
],
'emoji_picker' => [
'search' => 'Emoji zoeken',
'empty' => 'Geen emoji\'s gevonden',
'recent' => 'Vaak gebruikt',
'smileys' => 'Smileys en emotie',
'people' => 'Mensen en lichaam',
'nature' => 'Dieren en natuur',
'food' => 'Eten en drinken',
'activities' => 'Activiteiten',
'travel' => 'Reizen en plaatsen',
'objects' => 'Objecten',
'symbols' => 'Symbolen',
'flags' => 'Vlaggen',
],
'status' => [
'pending' => 'In afwachting',
'scheduled' => 'Gepland',
'published' => 'Gepubliceerd',
'publishing' => 'Publiceren...',
'retrying' => 'Opnieuw proberen...',
'failed' => 'Mislukt',
],
'delete_modal' => [
'title' => 'Post verwijderen',
'description' => 'Weet je zeker dat je deze post wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt.',
'action' => 'Verwijderen',
'cancel' => 'Annuleren',
],
'sync_enable' => [
'title' => 'Synchronisatie inschakelen?',
'description' => 'Alle platforms delen dezelfde inhoud. Aangepaste bewerkingen aan afzonderlijke platforms worden vervangen door de huidige inhoud.',
'cancel' => 'Annuleren',
'action' => 'Synchronisatie inschakelen',
],
'sync_disable' => [
'title' => 'Synchronisatie uitschakelen?',
'description' => 'Elk platform behoudt zijn huidige inhoud, maar toekomstige bewerkingen gelden alleen voor het platform dat je bewerkt.',
'customize_note' => 'Je kunt de inhoud voor elk platform afzonderlijk aanpassen.',
'cancel' => 'Annuleren',
'action' => 'Synchronisatie uitschakelen',
],
'platforms_dialog' => [
'title' => 'Platforms selecteren',
'description' => 'Kies naar welke platforms je deze post wilt publiceren.',
],
'signatures_modal' => [
'search' => 'Handtekeningen zoeken...',
'no_results' => 'Geen handtekeningen gevonden.',
],
'validation' => [
'select_board' => 'Selecteer een bord',
'images_not_supported' => 'Afbeeldingen niet ondersteund',
'videos_not_supported' => 'Video\'s niet ondersteund',
'max_images' => 'Max. :count afbeeldingen',
'requires_media' => 'Media vereist',
'requires_content' => 'Tekstinhoud is vereist',
'exceeded' => ':count overschreden',
'does_not_support_images' => ':platform ondersteunt geen afbeeldingen',
'supports_up_to_images' => ':platform ondersteunt maximaal :count afbeeldingen',
'does_not_support_videos' => ':platform ondersteunt geen video\'s',
],
],
'content_types' => [
'instagram_feed' => [
'label' => 'Feedpost',
'description' => 'Verschijnt in je feed en profiel',
],
'instagram_reel' => [
'label' => 'Reel',
'description' => 'Korte video tot 15 minuten',
],
'instagram_story' => [
'label' => 'Story',
'description' => 'Verdwijnt na 24 uur',
],
'linkedin_post' => [
'label' => 'Post',
'description' => 'Standaardpost — enkele afbeelding, meerdere afbeeldingen, video of PDF',
],
'linkedin_page_post' => [
'label' => 'Post',
'description' => 'Standaardpost — enkele afbeelding, meerdere afbeeldingen, video of PDF',
],
'facebook_post' => [
'label' => 'Post',
'description' => 'Standaardpost op je pagina',
],
'facebook_reel' => [
'label' => 'Reel',
'description' => 'Korte video tot 90 seconden',
],
'facebook_story' => [
'label' => 'Story',
'description' => 'Verticale videostory, tot 60 seconden',
],
'tiktok_video' => [
'label' => 'Video',
'description' => 'Korte video-content',
],
'tiktok_photo' => [
'label' => 'Fotocarrousel',
'description' => 'Tot 35 foto\'s als een swipebare carrousel',
],
'youtube_short' => [
'label' => 'Short',
'description' => 'Verticale video tot 3 minuten',
],
'x_post' => [
'label' => 'Post',
'description' => 'Tweet met tekst en media',
],
'threads_post' => [
'label' => 'Post',
'description' => 'Tekstpost met optionele media',
],
'pinterest_pin' => [
'label' => 'Pin',
'description' => 'Standaard afbeeldingspin',
],
'pinterest_video_pin' => [
'label' => 'Videopin',
'description' => 'Videopin (4s - 15min)',
],
'pinterest_carousel' => [
'label' => 'Carrousel',
'description' => 'Carrousel met meerdere afbeeldingen (2-5 afbeeldingen)',
],
'bluesky_post' => [
'label' => 'Post',
'description' => 'Tekstpost met optionele afbeeldingen',
],
'mastodon_post' => [
'label' => 'Post',
'description' => 'Tekstpost met optionele media',
],
'telegram_post' => [
'label' => 'Post',
'description' => 'Tekstpost met optionele media',
],
'discord_message' => [
'label' => 'Bericht',
'description' => 'Bericht naar een Discord-kanaal met optionele media en embeds',
],
],
'platforms' => [
'linkedin' => 'LinkedIn',
'linkedin-page' => 'LinkedIn-pagina',
'x' => 'X',
'tiktok' => 'TikTok',
'youtube' => 'YouTube Shorts',
'facebook' => 'Facebook-pagina',
'instagram' => 'Instagram',
'threads' => 'Threads',
'pinterest' => 'Pinterest',
'bluesky' => 'Bluesky',
'mastodon' => 'Mastodon',
],
'flash' => [
'scheduled' => 'Post succesvol ingepland!',
'deleted' => 'Post succesvol verwijderd!',
'duplicated' => 'Post gedupliceerd als concept.',
'cannot_edit_finalized' => 'Deze post is al verwerkt en kan niet opnieuw worden gepubliceerd. Dupliceer hem om het opnieuw te proberen.',
'cannot_delete_published' => 'Gepubliceerde posts kunnen niet worden verwijderd.',
'connect_first' => 'Koppel ten minste één social netwerk voordat je een post aanmaakt.',
],
'errors' => [
'account_disconnected' => 'Social account is losgekoppeld',
'account_inactive' => 'Social account is gedeactiveerd',
'account_token_expired' => 'Sessie van social account verlopen — koppel opnieuw',
'platform_unavailable' => 'Het platform is tijdelijk niet beschikbaar. We proberen het zo opnieuw.',
'platform_unavailable_exhausted' => 'Het platform bleef na meerdere pogingen niet beschikbaar. Probeer het later opnieuw.',
'publishing_timed_out' => 'Publiceren is timed-out. Probeer het opnieuw.',
],
'delete' => [
'title' => 'Post verwijderen?',
'description' => 'Deze actie kan niet ongedaan worden gemaakt. De post en alle bijbehorende media worden permanent verwijderd.',
'confirm' => 'Ja, verwijderen',
'cancel' => 'Annuleren',
],
'create' => [
'title' => 'Een nieuwe post maken',
'description' => 'Kies hoe je wilt beginnen.',
'scratch_title' => 'Vanaf nul beginnen',
'scratch_description' => 'Open een lege post en schrijf alles zelf.',
'ai_title' => 'Genereren met AI',
'ai_description' => 'Beschrijf wat je wilt en AI genereert de inhoud voor je.',
'ai_configure_description' => 'Kies een formaat en beschrijf de post die je wilt maken.',
'ai_pick_template_description' => 'Kies een stijl voor je AI-gegenereerde post.',
'template_title' => 'Een sjabloon gebruiken',
'template_description' => 'Kies uit onze samengestelde sjablonen en pas ze aan.',
'coming_soon' => 'Binnenkort beschikbaar',
'preview' => [
'image_title' => 'Afbeeldingstitel',
'image_body' => 'Afbeeldingstekst',
],
'steps' => [
'template_picker_title' => 'Kies een stijl',
'format_title' => 'Kies een formaat',
'format_description' => 'Selecteer het type post dat je wilt maken.',
'account_title' => 'Kies een account',
'account_description' => 'Selecteer het social account om naar te publiceren.',
'media_title' => 'Media-opties',
'media_carousel' => 'Hoeveel slides?',
'media_optional' => 'Afbeeldingen toevoegen?',
'media_optional_label' => 'Hoeveel afbeeldingen?',
'media_none' => 'Geen',
'media_count_label' => 'Aantal afbeeldingen',
'brand_colors_label' => 'Merkkleuren',
'brand_colors_description' => 'Pas het merkkleurenpalet van je workspace toe op de gegenereerde afbeeldingen. Zet het uit om de AI kleuren te laten kiezen die bij de inhoud passen.',
'prompt_title' => 'Beschrijf je post',
'prompt_label' => 'Waar gaat deze post over?',
'prompt_placeholder' => 'bijv. Kondig onze nieuwe carrouselfunctie voor Instagram aan',
'preview_error' => 'Er is iets misgegaan. Probeer het opnieuw.',
'loading_page_title' => 'Je post wordt gegenereerd',
'loading_eta' => 'Geschatte tijd: ongeveer :minutes.',
'loading_eta_minute_one' => '1 minuut',
'loading_eta_minute_other' => ':count minuten',
'loading_leave_title' => 'Je kunt gewoon doorwerken.',
'loading_leave_body' => 'We laten het je weten wanneer de post klaar is.',
'loading_leave_cta' => 'Ga naar kalender',
'loading_create_another_cta' => 'Nog een post maken',
'loading_tip_credits' => 'Elke AI-afbeelding gebruikt ongeveer 15 credits.',
'loading_tip_edit' => 'Je kunt alles bewerken zodra de post klaar is.',
'loading_tip_draft' => 'Gegenereerde posts komen in je concepten terecht.',
'loading_tip_brand' => 'Pas je merkinstellingen aan om toekomstige posts te beïnvloeden.',
'loading_tip_carousel' => 'Carrousels leveren één slide per geüploade afbeelding.',
'loading_tip_quality' => 'De beeldkwaliteit is ingesteld op een balans tussen snelheid en kosten.',
'create' => 'Post aanmaken',
'back' => 'Terug',
'next' => 'Doorgaan',
'cancel' => 'Annuleren',
'discard' => 'Verwijderen',
'retry' => 'Opnieuw proberen',
'no_platforms' => 'Geen gekoppelde accounts',
'connect_first' => 'Koppel ten minste één social account om AI-generatie te gebruiken.',
'no_account_for_template' => 'Koppel een compatibel account om dit sjabloon te gebruiken.',
'format' => [
'instagram_feed' => 'Instagram-feedpost',
'instagram_carousel' => 'Instagram-carrousel',
'linkedin_post' => 'LinkedIn-post',
'linkedin_page_post' => 'LinkedIn-paginapost',
'x_post' => 'X-post',
'bluesky_post' => 'Bluesky-post',
'threads_post' => 'Threads-post',
'mastodon_post' => 'Mastodon-post',
'telegram_post' => 'Telegram-post',
'discord_message' => 'Discord-bericht',
'facebook_post' => 'Facebook-post',
'pinterest_pin' => 'Pinterest-pin',
'instagram_story' => 'Instagram-story',
'facebook_story' => 'Facebook-story',
],
],
],
'templates' => [
'browser_title' => 'Kies een sjabloon',
'browser_description' => 'Begin met een samengesteld sjabloon en pas het aan.',
'search_placeholder' => 'Sjablonen zoeken…',
'no_search_results' => 'Geen sjablonen komen overeen met je zoekopdracht',
'try_different_search' => 'Probeer een ander zoekwoord of wis de zoekopdracht.',
'slides_count' => '{count} slide|{count} slides',
'all_platforms' => 'Alle platforms',
'platform_search_placeholder' => 'Platform zoeken…',
'no_platform_match' => 'Geen platform komt overeen.',
'use_this' => 'Gebruik dit sjabloon',
'no_templates' => 'Geen sjablonen beschikbaar.',
'applying' => 'Sjabloon toepassen…',
'category' => [
'product_launch' => 'Productlancering',
'promotion' => 'Promotie',
'educational' => 'Educatief',
'behind_the_scenes' => 'Achter de schermen',
'testimonial' => 'Getuigenis',
'industry_tip' => 'Brancheadvies',
'event' => 'Evenement',
'engagement' => 'Betrokkenheid',
],
],
];