{"action":"created","comment":{"url":"https://api.github.com/repos/pagarme/pilot/pulls/comments/210067238","pull_request_review_id":146203377,"id":210067238,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxMDA2NzIzOA==","diff_hunk":"@@ -0,0 +1,484 @@\n+import React, { Component, Fragment } from 'react'\n+import PropTypes from 'prop-types'\n+import Form from 'react-vanilla-form'\n+import {\n+  Button,\n+  Card,\n+  CardActions,\n+  CardContent,\n+  Col,\n+  FormCheckbox,\n+  FormDropdown,\n+  FormInput,\n+  Grid,\n+  RadioGroup,\n+  Row,\n+  Spacing,\n+} from 'former-kit'\n+import { range } from 'ramda'\n+\n+import createCpfCnpjValidation from '../../../validation/cpfCnpj'\n+import createEmailValidation from '../../../validation/email'\n+import createPhoneValidation from '../../../validation/phone'\n+import createRequiredValidation from '../../../validation/required'\n+import style from './style.css'\n+\n+const PARTNER_LIMIT = 5\n+\n+const partnerOptions = range(0, PARTNER_LIMIT + 1)\n+  .map(index => ({ name: index.toString(), value: index.toString() }))\n+\n+const masks = {\n+  cnpj: '11.111.111/1111-11',\n+  cpf: '111.111.111-11',\n+  phone: '(11) 11111-1111',\n+}\n+\n+const partnerInitialization = {\n+  cpf: '',\n+  name: '',\n+  phone: '',\n+}\n+\n+const partnerPropTypes = PropTypes.shape({\n+  cpf: PropTypes.string,\n+  name: PropTypes.string,\n+  phone: PropTypes.string,\n+})\n+\n+const getValidations = (documentType, t) => {\n+  const required = createRequiredValidation(\n+    t('pages.recipients.identification.error_validate_required')\n+  )\n+\n+  const validateCpfCnpj = createCpfCnpjValidation(\n+    t('pages.recipients.identification.error_validate_cpf')\n+  )\n+\n+\n+  const validateEmail = createEmailValidation(\n+    t('pages.recipients.identification.error_validate_email')\n+  )\n+\n+  const validatePhone = createPhoneValidation(\n+    t('pages.recipients.identification.error_validate_phone')\n+  )\n+\n+  if (documentType === 'cnpj') {\n+    const partnerValidations = {\n+      cpf: [required, validateCpfCnpj],\n+      name: [required],\n+      phone: [required, validatePhone],\n+    }\n+\n+    return {\n+      cnpj: [required, validateCpfCnpj],\n+      cnpjEmail: [validateEmail],\n+      cnpjName: [required],\n+      cnpjPhone: [validatePhone],\n+      documentInformation: [required, validatePhone, validateEmail],\n+      documentType: [],\n+      partner0: partnerValidations,\n+      partner1: partnerValidations,\n+      partner2: partnerValidations,\n+      partner3: partnerValidations,\n+      partner4: partnerValidations,\n+    }\n+  }\n+\n+  return {\n+    cpf: [required, validateCpfCnpj],\n+    cpfEmail: [required, validateEmail],\n+    cpfName: [required],\n+    cpfPhone: [required, validatePhone],\n+    cpfUrl: [required],\n+  }\n+}\n+\n+class RecipientStep extends Component {\n+  constructor (props) {\n+    super(props)\n+\n+    this.state = {\n+      formData: {\n+        cnpj: '',\n+        cnpjEmail: '',\n+        cnpjInformation: false,\n+        cnpjName: '',\n+        cnpjPhone: '',\n+        cnpjUrl: '',\n+        cpf: '',\n+        cpfEmail: '',\n+        cpfInformation: false,\n+        cpfName: '',\n+        cpfPhone: '',\n+        cpfUrl: '',\n+        documentType: 'cpf',\n+        partner: '0',\n+        partner0: partnerInitialization,\n+        partner1: partnerInitialization,\n+        partner2: partnerInitialization,\n+        partner3: partnerInitialization,\n+        partner4: partnerInitialization,\n+        ...props.data,\n+      },\n+    }\n+\n+    this.onChangeWithMask = this.onChangeWithMask.bind(this)\n+    this.onFormChange = this.onFormChange.bind(this)\n+    this.onFormSubmit = this.onFormSubmit.bind(this)\n+    this.renderDocumentInput = this.renderDocumentInput.bind(this)\n+    this.toggleAdditionalInformation = this.toggleAdditionalInformation.bind(this)\n+  }\n+\n+  onFormSubmit (formData, formErrors) {\n+    if (!formErrors) {\n+      this.props.onContinue(formData)\n+    }\n+  }\n+\n+  onFormChange (formData) {\n+    this.setState({\n+      formData,\n+    })\n+  }\n+\n+  onChangeWithMask (event, parent) {\n+    const { name } = event.target\n+    const value = event.target.value || ''\n+\n+    if (!name) return\n+\n+    let data = { [name]: value }\n+\n+    if (parent) {\n+      data = {\n+        [parent]: {\n+          ...this.state.formData[parent],\n+          [name]: value,\n+        },\n+      }\n+    }\n+\n+    const formData = {\n+      ...this.state.formData,\n+      ...data,\n+    }\n+\n+    this.onFormChange(formData)\n+  }\n+\n+  toggleAdditionalInformation () {\n+    const { documentType } = this.state.formData\n+    const currentInformationType = `${documentType}Information`\n+\n+    this.setState({\n+      formData: {\n+        ...this.state.formData,\n+        [currentInformationType]: !this.state.formData[currentInformationType],\n+      },\n+    })\n+  }\n+\n+  renderDocumentInput () {\n+    const { documentType } = this.state.formData\n+\n+    if (documentType === 'cpf') {\n+      return (\n+        <FormInput\n+          key=\"cpf\"\n+          label={this.props.t('pages.recipients.identification.type_label_cpf')}\n+          mask={masks.cpf}\n+          name=\"cpf\"\n+          onChange={this.onChangeWithMask}\n+          size={35}\n+          type=\"text\"\n+        />\n+      )\n+    }\n+\n+    return (\n+      <FormInput\n+        key=\"cnpj\"\n+        label={this.props.t('pages.recipients.identification.type_label_cnpj')}\n+        mask={masks.cnpj}\n+        name=\"cnpj\"\n+        onChange={this.onChangeWithMask}\n+        size={35}\n+        type=\"text\"\n+      />\n+    )\n+  }\n+\n+  renderInformationCheck () {\n+    const { documentType } = this.state.formData\n+\n+    const info = this.props.t(`pages.recipients.identification.${documentType}_check_label`)\n+\n+    return (\n+      <FormCheckbox\n+        checked={this.state.formData[`${documentType}Information`]}\n+        label={info}\n+        name={`${documentType}Information`}\n+        onChange={this.toggleAdditionalInformation}\n+        value=\"\"\n+      />\n+    )\n+  }\n+\n+  renderDocumentInformationInput () {\n+    const {\n+      formData: {\n+        documentType,\n+      },\n+    } = this.state\n+\n+    const { t } = this.props\n+\n+    return (\n+      <div>\n+        <h2 className={style.title}>\n+          {t(`pages.recipients.identification.${documentType}_title`)}\n+        </h2>\n+        <h3 className={style.subtitle}>\n+          {t(`pages.recipients.identification.${documentType}_subtitle`)}\n+        </h3>\n+        <Row>\n+          <Col>\n+            <FormInput\n+              label={t(`pages.recipients.identification.${documentType}_name`)}\n+              name={`${documentType}Name`}\n+              size={35}\n+              type=\"text\"\n+            />\n+          </Col>\n+        </Row>\n+        <Row stretch>\n+          <Col>\n+            <FormInput\n+              label={t(`pages.recipients.identification.${documentType}_email`)}\n+              name={`${documentType}Email`}\n+              size={35}\n+              type=\"text\"\n+            />\n+          </Col>\n+          <Col>\n+            <FormInput\n+              label={t(`pages.recipients.identification.${documentType}_url`)}\n+              name={`${documentType}Url`}\n+              size={35}\n+              type=\"text\"\n+            />\n+          </Col>\n+          <Col>\n+            <FormInput\n+              key=\"documentPhone\"\n+              label={t(`pages.recipients.identification.${documentType}_phone`)}\n+              mask={masks.phone}\n+              name={`${documentType}Phone`}\n+              onChange={this.onChangeWithMask}\n+              size={35}\n+              type=\"text\"\n+            />\n+          </Col>\n+        </Row>\n+      </div>\n+    )\n+  }\n+\n+  renderPartnerInput () {\n+    const { t } = this.props\n+    const { partner } = this.state.formData\n+\n+    return (\n+      range(0, parseInt(partner, 10)).map(partnerNumber => (\n+        <fieldset\n+          className={style.fieldset}\n+          key={`fieldset${partnerNumber}`}\n+          name={`partner${partnerNumber}`}\n+        >\n+          <Row stretch>\n+            <Col>\n+              <FormInput\n+                label={t('pages.recipients.identification.cnpj_partners_name')}\n+                name=\"name\"\n+                size={35}\n+                type=\"text\"\n+              />\n+            </Col>\n+            <Col>\n+              <FormInput\n+                label={t('pages.recipients.identification.cnpj_partners_cpf')}\n+                mask={masks.cpf}\n+                name=\"cpf\"\n+                onChange={event => this.onChangeWithMask(event, `partner${partnerNumber}`)}\n+                type=\"text\"\n+                size={35}\n+              />\n+            </Col>\n+            <Col>\n+              <FormInput\n+                label={t('pages.recipients.identification.cnpj_partners_phone')}\n+                mask={masks.phone}\n+                name=\"phone\"\n+                onChange={event => this.onChangeWithMask(event, `partner${partnerNumber}`)}\n+                size={35}\n+                type=\"text\"\n+              />\n+            </Col>\n+          </Row>\n+        </fieldset>\n+      ))\n+    )\n+  }\n+\n+  render () {\n+    const {\n+      t,\n+      errors,\n+    } = this.props\n+\n+    const {\n+      formData,\n+      formData: {\n+        documentType,\n+      },\n+    } = this.state\n+\n+    return (\n+      <Form\n+        data={this.state.formData}\n+        errors={errors}\n+        onChange={this.onFormChange}\n+        onSubmit={this.onFormSubmit}\n+        validateOn=\"blur\"\n+        validation={getValidations(documentType, t)}\n+      >\n+        <Card>\n+          <CardContent>\n+            <h2 className={style.title}>\n+              {t('pages.recipients.identification.title')}\n+            </h2>\n+            <h3 className={style.subtitle}>\n+              {t('pages.recipients.identification.subtitle')}\n+            </h3>\n+            <h3 className={style.subtitle}>\n+              {t('pages.recipients.identification.type_label')}\n+            </h3>\n+            <RadioGroup\n+              name=\"documentType\"\n+              options={[\n+                {\n+                  name: this.props.t('pages.recipients.identification.cpf_person'),\n+                  value: 'cpf',\n+                },\n+                {\n+                  name: this.props.t('pages.recipients.identification.cnpj_person'),\n+                  value: 'cnpj',\n+                },\n+              ]}\n+            />\n+            <Grid>\n+              <Row>\n+                <Col>\n+                  { this.renderDocumentInput() }\n+                </Col>\n+              </Row>\n+              <Row>\n+                <Col>\n+                  { this.renderInformationCheck() }\n+                </Col>\n+              </Row>\n+              { formData[`${documentType}Information`] && (\n+              <Fragment>\n+                { this.renderDocumentInformationInput()}\n+                { documentType === 'cnpj' && (\n+                  <Fragment>\n+                    <Row className={style.paddingTop}>\n+                      <Col>\n+                        <h2 className={style.title}>\n+                          {t('pages.recipients.identification.cnpj_partners_title')}\n+                        </h2>\n+                        <h3 className={style.subtitle}>\n+                          {t('pages.recipients.identification.cnpj_partners_subtitle')}\n+                        </h3>\n+                        <FormDropdown\n+                          label={t('pages.recipients.identification.cnpj_partners_label')}\n+                          name=\"partner\"\n+                          options={partnerOptions}\n+                        />\n+                      </Col>\n+                    </Row>\n+                    { this.renderPartnerInput() }\n+                  </Fragment>\n+                )}\n+              </Fragment>\n+              )}\n+            </Grid>\n+          </CardContent>\n+          <div className={style.paddingTop}>\n+            <CardActions>\n+              <Button\n+                fill=\"outline\"\n+                onClick={this.props.onCancel}\n+                type=\"button\"\n+              >\n+                {t('pages.recipients.identification.button_cancel')}\n+              </Button>\n+              <Spacing />\n+              <Button\n+                fill=\"gradient\"\n+                type=\"submit\"\n+              >\n+                {t('pages.recipients.identification.button_submit')}\n+              </Button>\n+            </CardActions>\n+          </div>\n+        </Card>\n+      </Form>\n+    )\n+  }\n+}\n+\n+RecipientStep.propTypes = {\n+  data: PropTypes.shape({\n+    cnpj: PropTypes.string,\n+    cnpjEmail: PropTypes.string,\n+    cnpjInformation: PropTypes.bool,\n+    cnpjName: PropTypes.string,\n+    cnpjPhone: PropTypes.string,\n+    cnpjUrl: PropTypes.string,\n+    cpf: PropTypes.string,\n+    cpfEmail: PropTypes.string,\n+    cpfInformation: PropTypes.bool,\n+    cpfName: PropTypes.string,\n+    cpfPhone: PropTypes.string,\n+    cpfUrl: PropTypes.string,\n+    documentType: PropTypes.string,\n+    partner: PropTypes.string,","path":"packages/pilot/src/containers/AddRecipient/RecipientStep/index.js","position":458,"original_position":458,"commit_id":"3edbca0fb8836020a0d8b22e7b79415744a19cc2","original_commit_id":"3edbca0fb8836020a0d8b22e7b79415744a19cc2","user":{"login":"rsmelo","id":479495,"node_id":"MDQ6VXNlcjQ3OTQ5NQ==","avatar_url":"https://avatars0.githubusercontent.com/u/479495?v=4","gravatar_id":"","url":"https://api.github.com/users/rsmelo","html_url":"https://github.com/rsmelo","followers_url":"https://api.github.com/users/rsmelo/followers","following_url":"https://api.github.com/users/rsmelo/following{/other_user}","gists_url":"https://api.github.com/users/rsmelo/gists{/gist_id}","starred_url":"https://api.github.com/users/rsmelo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rsmelo/subscriptions","organizations_url":"https://api.github.com/users/rsmelo/orgs","repos_url":"https://api.github.com/users/rsmelo/repos","events_url":"https://api.github.com/users/rsmelo/events{/privacy}","received_events_url":"https://api.github.com/users/rsmelo/received_events","type":"User","site_admin":false},"body":"acho que aqui poderia ser `partnerNumber` pra evitar confusão assim como sugerido no state do componente","created_at":"2018-08-14T19:00:22Z","updated_at":"2018-08-14T19:26:23Z","html_url":"https://github.com/pagarme/pilot/pull/782#discussion_r210067238","pull_request_url":"https://api.github.com/repos/pagarme/pilot/pulls/782","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/pagarme/pilot/pulls/comments/210067238"},"html":{"href":"https://github.com/pagarme/pilot/pull/782#discussion_r210067238"},"pull_request":{"href":"https://api.github.com/repos/pagarme/pilot/pulls/782"}}},"pull_request":{"url":"https://api.github.com/repos/pagarme/pilot/pulls/782","id":201017181,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAxMDE3MTgx","html_url":"https://github.com/pagarme/pilot/pull/782","diff_url":"https://github.com/pagarme/pilot/pull/782.diff","patch_url":"https://github.com/pagarme/pilot/pull/782.patch","issue_url":"https://api.github.com/repos/pagarme/pilot/issues/782","number":782,"state":"open","locked":false,"title":"Feature/recipients add","user":{"login":"gmbarroso","id":20197808,"node_id":"MDQ6VXNlcjIwMTk3ODA4","avatar_url":"https://avatars1.githubusercontent.com/u/20197808?v=4","gravatar_id":"","url":"https://api.github.com/users/gmbarroso","html_url":"https://github.com/gmbarroso","followers_url":"https://api.github.com/users/gmbarroso/followers","following_url":"https://api.github.com/users/gmbarroso/following{/other_user}","gists_url":"https://api.github.com/users/gmbarroso/gists{/gist_id}","starred_url":"https://api.github.com/users/gmbarroso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gmbarroso/subscriptions","organizations_url":"https://api.github.com/users/gmbarroso/orgs","repos_url":"https://api.github.com/users/gmbarroso/repos","events_url":"https://api.github.com/users/gmbarroso/events{/privacy}","received_events_url":"https://api.github.com/users/gmbarroso/received_events","type":"User","site_admin":false},"body":"Primeira etapa do componetne de recebedores.","created_at":"2018-07-12T14:18:12Z","updated_at":"2018-08-14T19:26:23Z","closed_at":null,"merged_at":null,"merge_commit_sha":"129d8dd2a0d837021e3d84f9a9e339b147f33005","assignee":{"login":"gmbarroso","id":20197808,"node_id":"MDQ6VXNlcjIwMTk3ODA4","avatar_url":"https://avatars1.githubusercontent.com/u/20197808?v=4","gravatar_id":"","url":"https://api.github.com/users/gmbarroso","html_url":"https://github.com/gmbarroso","followers_url":"https://api.github.com/users/gmbarroso/followers","following_url":"https://api.github.com/users/gmbarroso/following{/other_user}","gists_url":"https://api.github.com/users/gmbarroso/gists{/gist_id}","starred_url":"https://api.github.com/users/gmbarroso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gmbarroso/subscriptions","organizations_url":"https://api.github.com/users/gmbarroso/orgs","repos_url":"https://api.github.com/users/gmbarroso/repos","events_url":"https://api.github.com/users/gmbarroso/events{/privacy}","received_events_url":"https://api.github.com/users/gmbarroso/received_events","type":"User","site_admin":false},"assignees":[{"login":"gmbarroso","id":20197808,"node_id":"MDQ6VXNlcjIwMTk3ODA4","avatar_url":"https://avatars1.githubusercontent.com/u/20197808?v=4","gravatar_id":"","url":"https://api.github.com/users/gmbarroso","html_url":"https://github.com/gmbarroso","followers_url":"https://api.github.com/users/gmbarroso/followers","following_url":"https://api.github.com/users/gmbarroso/following{/other_user}","gists_url":"https://api.github.com/users/gmbarroso/gists{/gist_id}","starred_url":"https://api.github.com/users/gmbarroso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gmbarroso/subscriptions","organizations_url":"https://api.github.com/users/gmbarroso/orgs","repos_url":"https://api.github.com/users/gmbarroso/repos","events_url":"https://api.github.com/users/gmbarroso/events{/privacy}","received_events_url":"https://api.github.com/users/gmbarroso/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":670269986,"node_id":"MDU6TGFiZWw2NzAyNjk5ODY=","url":"https://api.github.com/repos/pagarme/pilot/labels/devs","name":"devs","color":"6210e8","default":false},{"id":891329682,"node_id":"MDU6TGFiZWw4OTEzMjk2ODI=","url":"https://api.github.com/repos/pagarme/pilot/labels/pilot","name":"pilot","color":"3f36ed","default":false},{"id":722842150,"node_id":"MDU6TGFiZWw3MjI4NDIxNTA=","url":"https://api.github.com/repos/pagarme/pilot/labels/review-needed","name":"review-needed","color":"fcec0f","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/pagarme/pilot/pulls/782/commits","review_comments_url":"https://api.github.com/repos/pagarme/pilot/pulls/782/comments","review_comment_url":"https://api.github.com/repos/pagarme/pilot/pulls/comments{/number}","comments_url":"https://api.github.com/repos/pagarme/pilot/issues/782/comments","statuses_url":"https://api.github.com/repos/pagarme/pilot/statuses/3edbca0fb8836020a0d8b22e7b79415744a19cc2","head":{"label":"pagarme:feature/recipients-add","ref":"feature/recipients-add","sha":"3edbca0fb8836020a0d8b22e7b79415744a19cc2","user":{"login":"pagarme","id":3846050,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4NDYwNTA=","avatar_url":"https://avatars2.githubusercontent.com/u/3846050?v=4","gravatar_id":"","url":"https://api.github.com/users/pagarme","html_url":"https://github.com/pagarme","followers_url":"https://api.github.com/users/pagarme/followers","following_url":"https://api.github.com/users/pagarme/following{/other_user}","gists_url":"https://api.github.com/users/pagarme/gists{/gist_id}","starred_url":"https://api.github.com/users/pagarme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pagarme/subscriptions","organizations_url":"https://api.github.com/users/pagarme/orgs","repos_url":"https://api.github.com/users/pagarme/repos","events_url":"https://api.github.com/users/pagarme/events{/privacy}","received_events_url":"https://api.github.com/users/pagarme/received_events","type":"Organization","site_admin":false},"repo":{"id":96902421,"node_id":"MDEwOlJlcG9zaXRvcnk5NjkwMjQyMQ==","name":"pilot","full_name":"pagarme/pilot","owner":{"login":"pagarme","id":3846050,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4NDYwNTA=","avatar_url":"https://avatars2.githubusercontent.com/u/3846050?v=4","gravatar_id":"","url":"https://api.github.com/users/pagarme","html_url":"https://github.com/pagarme","followers_url":"https://api.github.com/users/pagarme/followers","following_url":"https://api.github.com/users/pagarme/following{/other_user}","gists_url":"https://api.github.com/users/pagarme/gists{/gist_id}","starred_url":"https://api.github.com/users/pagarme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pagarme/subscriptions","organizations_url":"https://api.github.com/users/pagarme/orgs","repos_url":"https://api.github.com/users/pagarme/repos","events_url":"https://api.github.com/users/pagarme/events{/privacy}","received_events_url":"https://api.github.com/users/pagarme/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/pagarme/pilot","description":":airplane: The next iteration of Pagar.me's Dashboard","fork":false,"url":"https://api.github.com/repos/pagarme/pilot","forks_url":"https://api.github.com/repos/pagarme/pilot/forks","keys_url":"https://api.github.com/repos/pagarme/pilot/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pagarme/pilot/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pagarme/pilot/teams","hooks_url":"https://api.github.com/repos/pagarme/pilot/hooks","issue_events_url":"https://api.github.com/repos/pagarme/pilot/issues/events{/number}","events_url":"https://api.github.com/repos/pagarme/pilot/events","assignees_url":"https://api.github.com/repos/pagarme/pilot/assignees{/user}","branches_url":"https://api.github.com/repos/pagarme/pilot/branches{/branch}","tags_url":"https://api.github.com/repos/pagarme/pilot/tags","blobs_url":"https://api.github.com/repos/pagarme/pilot/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pagarme/pilot/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pagarme/pilot/git/refs{/sha}","trees_url":"https://api.github.com/repos/pagarme/pilot/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pagarme/pilot/statuses/{sha}","languages_url":"https://api.github.com/repos/pagarme/pilot/languages","stargazers_url":"https://api.github.com/repos/pagarme/pilot/stargazers","contributors_url":"https://api.github.com/repos/pagarme/pilot/contributors","subscribers_url":"https://api.github.com/repos/pagarme/pilot/subscribers","subscription_url":"https://api.github.com/repos/pagarme/pilot/subscription","commits_url":"https://api.github.com/repos/pagarme/pilot/commits{/sha}","git_commits_url":"https://api.github.com/repos/pagarme/pilot/git/commits{/sha}","comments_url":"https://api.github.com/repos/pagarme/pilot/comments{/number}","issue_comment_url":"https://api.github.com/repos/pagarme/pilot/issues/comments{/number}","contents_url":"https://api.github.com/repos/pagarme/pilot/contents/{+path}","compare_url":"https://api.github.com/repos/pagarme/pilot/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pagarme/pilot/merges","archive_url":"https://api.github.com/repos/pagarme/pilot/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pagarme/pilot/downloads","issues_url":"https://api.github.com/repos/pagarme/pilot/issues{/number}","pulls_url":"https://api.github.com/repos/pagarme/pilot/pulls{/number}","milestones_url":"https://api.github.com/repos/pagarme/pilot/milestones{/number}","notifications_url":"https://api.github.com/repos/pagarme/pilot/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pagarme/pilot/labels{/name}","releases_url":"https://api.github.com/repos/pagarme/pilot/releases{/id}","deployments_url":"https://api.github.com/repos/pagarme/pilot/deployments","created_at":"2017-07-11T14:28:12Z","updated_at":"2018-08-14T03:26:08Z","pushed_at":"2018-08-14T12:26:32Z","git_url":"git://github.com/pagarme/pilot.git","ssh_url":"git@github.com:pagarme/pilot.git","clone_url":"https://github.com/pagarme/pilot.git","svn_url":"https://github.com/pagarme/pilot","homepage":"","size":160312,"stargazers_count":238,"watchers_count":238,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":33,"mirror_url":null,"archived":false,"open_issues_count":106,"license":null,"forks":33,"open_issues":106,"watchers":238,"default_branch":"master"}},"base":{"label":"pagarme:feature/recipients","ref":"feature/recipients","sha":"99b7617b640a5ece22cb27668a95c44b1e286ff8","user":{"login":"pagarme","id":3846050,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4NDYwNTA=","avatar_url":"https://avatars2.githubusercontent.com/u/3846050?v=4","gravatar_id":"","url":"https://api.github.com/users/pagarme","html_url":"https://github.com/pagarme","followers_url":"https://api.github.com/users/pagarme/followers","following_url":"https://api.github.com/users/pagarme/following{/other_user}","gists_url":"https://api.github.com/users/pagarme/gists{/gist_id}","starred_url":"https://api.github.com/users/pagarme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pagarme/subscriptions","organizations_url":"https://api.github.com/users/pagarme/orgs","repos_url":"https://api.github.com/users/pagarme/repos","events_url":"https://api.github.com/users/pagarme/events{/privacy}","received_events_url":"https://api.github.com/users/pagarme/received_events","type":"Organization","site_admin":false},"repo":{"id":96902421,"node_id":"MDEwOlJlcG9zaXRvcnk5NjkwMjQyMQ==","name":"pilot","full_name":"pagarme/pilot","owner":{"login":"pagarme","id":3846050,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM4NDYwNTA=","avatar_url":"https://avatars2.githubusercontent.com/u/3846050?v=4","gravatar_id":"","url":"https://api.github.com/users/pagarme","html_url":"https://github.com/pagarme","followers_url":"https://api.github.com/users/pagarme/followers","following_url":"https://api.github.com/users/pagarme/following{/other_user}","gists_url":"https://api.github.com/users/pagarme/gists{/gist_id}","starred_url":"https://api.github.com/users/pagarme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pagarme/subscriptions","organizations_url":"https://api.github.com/users/pagarme/orgs","repos_url":"https://api.github.com/users/pagarme/repos","events_url":"https://api.github.com/users/pagarme/events{/privacy}","received_events_url":"https://api.github.com/users/pagarme/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/pagarme/pilot","description":":airplane: The next iteration of Pagar.me's Dashboard","fork":false,"url":"https://api.github.com/repos/pagarme/pilot","forks_url":"https://api.github.com/repos/pagarme/pilot/forks","keys_url":"https://api.github.com/repos/pagarme/pilot/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pagarme/pilot/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pagarme/pilot/teams","hooks_url":"https://api.github.com/repos/pagarme/pilot/hooks","issue_events_url":"https://api.github.com/repos/pagarme/pilot/issues/events{/number}","events_url":"https://api.github.com/repos/pagarme/pilot/events","assignees_url":"https://api.github.com/repos/pagarme/pilot/assignees{/user}","branches_url":"https://api.github.com/repos/pagarme/pilot/branches{/branch}","tags_url":"https://api.github.com/repos/pagarme/pilot/tags","blobs_url":"https://api.github.com/repos/pagarme/pilot/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pagarme/pilot/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pagarme/pilot/git/refs{/sha}","trees_url":"https://api.github.com/repos/pagarme/pilot/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pagarme/pilot/statuses/{sha}","languages_url":"https://api.github.com/repos/pagarme/pilot/languages","stargazers_url":"https://api.github.com/repos/pagarme/pilot/stargazers","contributors_url":"https://api.github.com/repos/pagarme/pilot/contributors","subscribers_url":"https://api.github.com/repos/pagarme/pilot/subscribers","subscription_url":"https://api.github.com/repos/pagarme/pilot/subscription","commits_url":"https://api.github.com/repos/pagarme/pilot/commits{/sha}","git_commits_url":"https://api.github.com/repos/pagarme/pilot/git/commits{/sha}","comments_url":"https://api.github.com/repos/pagarme/pilot/comments{/number}","issue_comment_url":"https://api.github.com/repos/pagarme/pilot/issues/comments{/number}","contents_url":"https://api.github.com/repos/pagarme/pilot/contents/{+path}","compare_url":"https://api.github.com/repos/pagarme/pilot/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pagarme/pilot/merges","archive_url":"https://api.github.com/repos/pagarme/pilot/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pagarme/pilot/downloads","issues_url":"https://api.github.com/repos/pagarme/pilot/issues{/number}","pulls_url":"https://api.github.com/repos/pagarme/pilot/pulls{/number}","milestones_url":"https://api.github.com/repos/pagarme/pilot/milestones{/number}","notifications_url":"https://api.github.com/repos/pagarme/pilot/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pagarme/pilot/labels{/name}","releases_url":"https://api.github.com/repos/pagarme/pilot/releases{/id}","deployments_url":"https://api.github.com/repos/pagarme/pilot/deployments","created_at":"2017-07-11T14:28:12Z","updated_at":"2018-08-14T03:26:08Z","pushed_at":"2018-08-14T12:26:32Z","git_url":"git://github.com/pagarme/pilot.git","ssh_url":"git@github.com:pagarme/pilot.git","clone_url":"https://github.com/pagarme/pilot.git","svn_url":"https://github.com/pagarme/pilot","homepage":"","size":160312,"stargazers_count":238,"watchers_count":238,"language":"JavaScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":33,"mirror_url":null,"archived":false,"open_issues_count":106,"license":null,"forks":33,"open_issues":106,"watchers":238,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/pagarme/pilot/pulls/782"},"html":{"href":"https://github.com/pagarme/pilot/pull/782"},"issue":{"href":"https://api.github.com/repos/pagarme/pilot/issues/782"},"comments":{"href":"https://api.github.com/repos/pagarme/pilot/issues/782/comments"},"review_comments":{"href":"https://api.github.com/repos/pagarme/pilot/pulls/782/comments"},"review_comment":{"href":"https://api.github.com/repos/pagarme/pilot/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/pagarme/pilot/pulls/782/commits"},"statuses":{"href":"https://api.github.com/repos/pagarme/pilot/statuses/3edbca0fb8836020a0d8b22e7b79415744a19cc2"}},"author_association":"NONE"}}
{"actor":{"display_login":"rsmelo"}}