Relay – Romanian Translation part 2 (3%-7% 1152 words translated)

in #utopian-io7 years ago (edited)

This is a romanian translation of the Relay project. This is my second contribution to this project.

The translation is going very well, wtih no major difficulties. Stellar formating on this project, very clear to understand the task at hand. The words required for translation are somewhat difficult sometimes, but they are put in a logical manner. There were a few words that I decided would be best left as they are like „request”, „spinner” , „subset”, „stories” and „meta route”. These are all programming words and, since most programming is done in english, I considered it would benefit if I leave them like this.

I have translated 7% of the Relay project. (2237 words).

Project Details

Relay is a JavaScript framework for building data-driven React applications.

Relay has many features, but to describe it best we are going to refer to these 3:
• Declarative: Never again communicate with your data store using an imperative API. Simply declare your data requirements using GraphQL and let Relay figure out how and when to fetch your data.
• Colocation: Queries live next to the views that rely on them, so you can easily reason about your app. Relay aggregates queries into efficient network requests to fetch only what you need.
• Mutations: Relay lets you mutate data on the client and server using GraphQL mutations, and offers automatic data consistency, optimistic updates, and error handling.

Links related to the translation

The link for the github page of the project can be found here, also the crowdin page of the Romanian language with my activity, can be found here.

Source Language

English

Translated Language

Romanian - 27888 words to be translated.

Number Of Words

2237

Number of words translated on this contribution: 1152

Proofread Words

0

Previous translation on the same project

Here is the link to the first part of the translation.

Number of words translated on the project before this report (if any): 1085

Bellow, I will provide a few screenshots that I took, while translating the Relay project:
2018-01-30 20_34_59-Relay translations_ collaborative nationalization and simple translation tool Cr.png
2018-01-30 21_41_29-Relay translations_ collaborative nationalization and simple translation tool Cr.png
2018-01-30 20_35_09-vellosid's Relay Translation Reports – Google Chrome.png
2018-01-30 21_41_17-vellosid's Relay Translation Reports – Google Chrome.png
2018-01-30 20_41_30-All Strings - Relay - Crowdin translation – Google Chrome.png
2018-01-30 21_27_09-All Strings - Relay - Crowdin translation – Google Chrome.png
2018-01-30 21_41_13-All Strings - Relay - Crowdin translation – Google Chrome.png
2018-01-30 21_02_31-All Strings - Relay - Crowdin translation – Google Chrome.png

The total translation time for this part was about 1 and a half hours :

You suggested 108 translations into Romanian
Translation File Language Time
Exemplu APIReference-Mutation.md Romanian 02:40 PM
Implementează această metodă necesară pentru a prepară variabilele pentru a fi utilizate ca input pentru mutație. APIReference-Mutation.md Romanian 02:40 PM
abstract getVariables(): {[name: string]: mixed} APIReference-Mutation.md Romanian 02:40 PM
getVariables (abstract method) APIReference-Mutation.md Romanian 02:39 PM
return Relay.QLmutation {unlikeStory} : return Relay.QLmutation {likeStory}; } } APIReference-Mutation.md Romanian 02:39 PM
class LikeStoryMutation extends Relay.Mutation { getMutation() { return this.props.story.viewerDoesLike ? APIReference-Mutation.md Romanian 02:39 PM
Exemplu APIReference-Mutation.md Romanian 02:39 PM

getFiles()
APIReference-Mutation.md Romanian 02:39 PM
getCollisionKey()
APIReference-Mutation.md Romanian 02:39 PM
static getFragment(fragmentName[, variableMapping])
APIReference-Mutation.md Romanian 02:39 PM
abstract getVariables()
APIReference-Mutation.md Romanian 02:39 PM
abstract getMutation()
APIReference-Mutation.md Romanian 02:39 PM
abstract getFatQuery()
APIReference-Mutation.md Romanian 02:38 PM
abstract getConfigs()
APIReference-Mutation.md Romanian 02:38 PM
constructor(props)
APIReference-Mutation.md Romanian 02:38 PM Metode APIReference-Mutation.md Romanian 02:38 PM
static prepareVariables
O metodă de a modifica variabilele bazată pe mediul de rulare, variabilele anterioare, sau meta route APIReference-Mutation.md Romanian 02:26 PM
static initialVariables
Un set de variabile de bază pentru a face disponibile la constructorii acestui fragment al mutației APIReference-Mutation.md Romanian 02:26 PM
static fragments
Declară dependențele de date ale acestei mutații aici APIReference-Mutation.md Romanian 02:25 PM Proprietăţi APIReference-Mutation.md Romanian 02:24 PM Prezentare generală APIReference-Mutation.md Romanian 02:24 PM Pentru a crea o mutație pentru utilizarea în aplicația noastră, noi subclasăm > > Relay.Mutation și implementăm, minim, cele patru metode abstracte listate mai jos. APIReference-Mutation.md Romanian 02:24 PM Relay utilizează mutații GraphQL; operațiuni ce ne permit să modificăm datele la client și server. APIReference-Mutation.md Romanian 02:22 PM Relay.Mutation APIReference-Mutation.md Romanian 02:21 PM api-reference-relay-mutation APIReference-Mutation.md Romanian 02:21 PM Számos részletesebb példák találhatók a test suite. APIReference-GraphQLMutation.md Romanian 02:21 PM Vezi deasemenea APIReference-GraphQLMutation.md Romanian 02:20 PM Restaurează o mutație optimistă. APIReference-GraphQLMutation.md Romanian 02:20 PM rollback(): void; APIReference-GraphQLMutation.md Romanian 02:19 PM rollback APIReference-GraphQLMutation.md Romanian 02:19 PM Vezi deasemenea: Relay.Mutation::getConfigs() APIReference-GraphQLMutation.md Romanian 02:19 PM const configs = [{ type: 'RANGE_ADD', connectionName: 'topLevelComments', edgeName: 'feedbackCommentEdge', parentID: 'aFeedbackId', parentName: 'feedback', rangeBehaviors: { '': GraphQLMutatorConstants.PREPEND, }, }]; const transaction = mutation.commit(configs); APIReference-GraphQLMutation.md Romanian 02:19 PM Exemplu APIReference-GraphQLMutation.md Romanian 02:18 PM Notă: Această metodă poate fi apelată doar o dată per instanță. APIReference-GraphQLMutation.md Romanian 02:18 PM Opțional, precedă cu un apel la applyOptimistic() pentru a aplica o actualizare optimistă la stoc. APIReference-GraphQLMutation.md Romanian 02:18 PM Parametrul opțional config poate fi utilizat pentru a configura un RANGE_ADD sau un alt tip de mutație, similar cu API-ul Relay.Mutation. APIReference-GraphQLMutation.md Romanian 02:17 PM Apelează aceasta pentru a trimite mutația către server. APIReference-GraphQLMutation.md Romanian 02:16 PM commit(configs: ?Array<RelayMutationConfig>): RelayMutationTransaction; APIReference-GraphQLMutation.md Romanian 02:16 PM commit APIReference-GraphQLMutation.md Romanian 02:15 PM Vezi deasemenea: Relay.Mutation::getConfigs() APIReference-GraphQLMutation.md Romanian 02:15 PM const optimisticQuery = Relay.QL`mutation FeedbackLikeOptimisticUpdate { feedbackLike(input: $input) { clientMutationId feedback { doesViewerLike id } } }`; const optimisticResponse = { feedback: { doesViewerLike: true, id: 'aFeedbackId', __typename: 'Feedback', }, }; const transaction = mutation.applyOptimistic( optimisticQuery, optimisticResponse, ); APIReference-GraphQLMutation.md Romanian 02:15 PM Exemplu APIReference-GraphQLMutation.md Romanian 02:15 PM Notă: O actualizare optimistă poate fi aplicată doar o dată. APIReference-GraphQLMutation.md Romanian 02:15 PM Opțional, continuă cu un apel la commit() pentru a trimite mutația la server. APIReference-GraphQLMutation.md Romanian 02:14 PM Asta îi spune lui Relay cum să proceseze răspunsul. APIReference-GraphQLMutation.md Romanian 02:14 PM Parametrul opțional config poate fi folosit pentru a configura un RANGE_ADD sau un alt tip de mutație, ca în API-ul Relay.Mutation. APIReference-GraphQLMutation.md Romanian 02:13 PM Apelează asta pentru a aplica optimist o actualizare la stoc. APIReference-GraphQLMutation.md Romanian 02:12 PM applyOptimistic( optimisticQuery: RelayConcreteNode, optimisticResponse: Object, configs: ?Array<RelayMutationConfig> ): RelayMutationTransaction; APIReference-GraphQLMutation.md Romanian 02:12 PM applyOptimistic APIReference-GraphQLMutation.md Romanian 02:11 PM Vezi deasemenea: Relay.Mutation::getCollisionKey() APIReference-GraphQLMutation.md Romanian 02:11 PM environment, { onFailure: err => console.warn(err), onSuccess: () => console.log('Success!'), }, collisionKey ); APIReference-GraphQLMutation.md Romanian 02:11 PM const collisionKey = 'feedback-like: ' + variables.input.feedbackId; const mutation = new Relay.GraphQLMutation( query, variables, null, // No files. APIReference-GraphQLMutation.md Romanian 02:11 PM Exemplu APIReference-GraphQLMutation.md Romanian 02:11 PM Dacă nu este furnizat, o cheie de coliziune unică este derivată (însemnând ca mutația creată va fi independentă și nu va coliziona cu oricare alta). APIReference-GraphQLMutation.md Romanian 02:11 PM Query-ul ar trebuii să ceară "clientMutationId" ca o subselecție. APIReference-GraphQLMutation.md Romanian 02:09 PM Argumentul input ar trebuii să conțină o (șir) proprietate "clientMutationId" pentru scopul de a reconcilia request-urile și răspunsurile (automat adăugate de API-ul Relay.GraphQLMutation). APIReference-GraphQLMutation.md Romanian 02:08 PM Mutația ar trebuii să ia un singur argument numit "input". APIReference-GraphQLMutation.md Romanian 02:07 PM variables va continua să returneze valorile anterioare până ce this.props a fost populat cu date ce împlinesc noile valori variabile. APIReference-Container.md Romanian 02:06 PM setVariables nu modifică imediat variables, cu crează o stare de așteptare în tranziție. APIReference-Container.md Romanian 02:05 PM Notă APIReference-Container.md Romanian 02:03 PM this.props.relay.setVariables({ count: this.props.relay.variables.count + 10 }); } } module.exports = Relay.createContainer(Feed, { initialVariables: {count: 10}, fragments: { viewer: () => Relay.QL` fragment on Viewer { feed(first: $count) { edges { node { id, ${Story.getFragment('story')}, }, }, }, } `, }, }); APIReference-Container.md Romanian 02:03 PM class Feed extends React.Component { render() { return ( <div> {this.props.viewer.feed.edges.map( edge => <Story story={edge.node} key={edge.node.id} /> )} </div> ); } _handleScrollLoad() { // Incrementează numărul de stories ce sunt randate cu 10. APIReference-Container.md Romanian 02:03 PM Exemplu APIReference-Container.md Romanian 02:02 PM Un callback opțional onReadyStateChange poate fi furnizat pentru a răspunde la evenimentele implicate în completarea datelor. APIReference-Container.md Romanian 02:02 PM Asta poate însemna trimiterea unui request către server dacă datele nu sunt deja disponibile la client. APIReference-Container.md Romanian 02:01 PM În schimb, Relay va utiliza noul set de variabile pentru a încerca să completeze noul fragment. APIReference-Container.md Romanian 02:00 PM this.props.relay.setVariables poate fi apelat pentru a actualiza un subset sau toate variabilele în același timp. APIReference-Container.md Romanian 01:59 PM Componentele pot schimba cerințele lor de date prin utilizare setVariables pentru a cere un update la setul curent de variables. APIReference-Container.md Romanian 01:56 PM setVariables([partialVariables: Object, [onReadyStateChange: Function]]): void APIReference-Container.md Romanian 01:55 PM setVariables APIReference-Container.md Romanian 01:55 PM În acest exemplu, de fiecare dată când o imagine cu o mărime nouă este încărcată un spinner este afișat în locul imaginii. APIReference-Container.md Romanian 01:54 PM } } `, }, }); APIReference-Container.md Romanian 01:53 PM class ProfilePicture extends React.Component { requestRandomPictureSize = () => { const randIntMin = 10; const randIntMax = 200; const size = (Math.floor(Math.random() * (randIntMax - randIntMin + 1)) + randIntMin); this.props.relay.setVariables({size}); } render() { const {relay, user} = this.props; const {pendingVariables} = relay; if (pendingVariables && 'size' in pendingVariables) { // Profile picture with new size is loading return ( <View> <LoadingSpinner /> </View> ) } return ( <View> <Image uri={user.profilePicture.uri} width=... APIReference-Container.md Romanian 01:53 PM Exemplu APIReference-Container.md Romanian 01:53 PM Dacă nici un request nu este în derulare pendingVariables este null. APIReference-Container.md Romanian 01:53 PM pendingVariables conține un set de variabile ce sunt utilizate pentru a lua props noi, a.î. când this.props.relay.setVariables() sau this.props.relay.forceFetch() sunt apelate și request-ul corespunzător este în derulare. APIReference-Container.md Romanian 01:52 PM variables APIReference-Container.md Romanian 01:51 PM pendingVariables: ?{[name: string]: mixed} APIReference-Container.md Romanian 01:50 PM pendingVariables APIReference-Container.md Romanian 01:50 PM Comportă-te cu this.props.relay.variables ca și cum ar fi imutabilă, ca și props. APIReference-Container.md Romanian 01:50 PM Niciodată nu modifica this.props.relay.variables direct pentru că nu va declanșa datele pentru a fi luate corespunzător. APIReference-Container.md Romanian 01:49 PM Notă APIReference-Container.md Romanian 01:48 PM În acest exemplu, lățimea imaginii randate va corespunde întotdeauna cu variabila $size folosită pentru a lua versiunea curentă a profilePicture.uri. APIReference-Container.md Romanian 01:48 PM } } `, }, }); APIReference-Container.md Romanian 01:47 PM class ProfilePicture extends React.Component { render() { var user = this.props.user; return ( <View> <Image uri={user.profilePicture.uri} width={this.props.relay.variables.size} /> </View> ); } } module.exports = Relay.createContainer(ProfilePicture, { initialVariables: {size: 50}, fragments: { user: () => Relay.QL` fragment on User { profilePicture(size: $size) { ... APIReference-Container.md Romanian 01:47 PM Exemplu APIReference-Container.md Romanian 01:46 PM variables conține un set de variabile ce a fost folosit pentru a lua setul curent de props. APIReference-Container.md Romanian 01:46 PM variables: {[name: string]: mixed} APIReference-Container.md Romanian 01:46 PM variabile APIReference-Container.md Romanian 01:46 PM Vezi deasemenea: Routes APIReference-Container.md Romanian 01:45 PM var name = this.props.relay.route.name; if (name === 'SuperAwesomeRoute') { // Do something super cool. } APIReference-Container.md Romanian 01:45 PM Exemplu APIReference-Container.md Romanian 01:45 PM Ea include informații despre name, params, și queries ai rutei curente. APIReference-Container.md Romanian 01:45 PM Route este folositor în a oferi contextul în care o componentă este randată în. APIReference-Container.md Romanian 01:44 PM route: RelayRoute APIReference-Container.md Romanian 01:42 PM route APIReference-Container.md Romanian 01:42 PM Proprietățile și metodele listate mai jos pot fi accesate la this.props.relay din componenta React încercuită. APIReference-Container.md Romanian 01:42 PM Proprietăți și Metode APIReference-Container.md Romanian 01:41 PM module.exports = Relay.createContainer(ProfilePicture, { shouldComponentUpdate: () => true, // ... }); APIReference-Container.md Romanian 01:41 PM Exemplu APIReference-Container.md Romanian 01:41 PM Pentru a asigura o actualizare în acest ca suprascrie comportamentul de bază prin specificarea unei funcții shouldComponentUpdate. APIReference-Container.md Romanian 01:41 PM Aceasta poate bloca actualizările la componente ce primesc date prin context. APIReference-Container.md Romanian 01:40 PM RelayContainer implementează o componentă conservativă de bază shouldComponentUpdate ce returnează false dacă nici un fragment props nu s-a schimbat și toate celelalte props sunt valori egale scalare. APIReference-Container.md Romanian 01:39 PM shouldComponentUpdate: () => boolean; APIReference-Container.md Romanian 01:37 PM shouldComponentUpdate APIReference-Container.md Romanian 01:37 PM }); APIReference-Container.md Romanian 01:37 PM size: prevVariables.size * window.devicePixelRatio, }; }, // ... APIReference-Container.md Romanian 01:37 PM module.exports = Relay.createContainer(ProfilePicture, { initialVariables: {size: 50}, prepareVariables: prevVariables => { return { ...prevVariables, // Dacă devicePixelRatio este `2`, noua mărime va fi `100`. APIReference-Container.md Romanian 01:37 PM



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

@vellosid, Like your contribution, upvote.

Hey @vellosid I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Contribute more often to get higher and higher rewards. I wish to see you often!
  • Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!

Get Noticed!

  • Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

Coin Marketplace

STEEM 0.16
TRX 0.13
JST 0.027
BTC 60535.76
ETH 2598.15
USDT 1.00
SBD 2.54