{"action":"created","comment":{"url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/comments/171604016","pull_request_review_id":100485911,"id":171604016,"diff_hunk":"@@ -0,0 +1,452 @@\n+<template>\n+  <div>\n+    <h2>{{ editMode }} Data Source</h2>\n+    <form class=\"uk-form-stacked\" ref=\"data-source-entry\" id=\"data-source-entry\" action=\"#\" method=\"post\" v-on:submit.prevent>\n+      <ul uk-tab>\n+        <li class=\"uk-active\"><a href=\"#\">Source</a></li>\n+        <li><a href=\"#\">Style</a></li>\n+        <li><a href=\"#\">Popover</a></li>\n+        <li><a href=\"#\">Preview</a></li>\n+      </ul>\n+      <ul class=\"uk-switcher\">\n+        <li>\n+          <div uk-grid class=\"uk-grid-match\">\n+            <div class=\"uk-width-1-2\"> <!-- column 1 start -->\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-source-type\">Type</label>\n+                <div class=\"uk-form-controls\">\n+                  <select\n+                    v-model=\"selectedDataSourceType\"\n+                    class=\"uk-select\" id=\"data-source-type\"\n+                  >\n+                    <option :value=\"key\" :key=\"key\" v-for=\"(key, val) in dataSourceTypeChoices\">{{ val }}</option>\n+                  </select>\n+                </div>\n+              </div>\n+            </div> <!-- column 1 -->\n+            <div class=\"uk-width-1-2\"> <!-- column 2 start -->\n+              <data-connector\n+                :validateNow=\"validateNow\"\n+                :type=\"selectedDataSourceType\"\n+                v-bind='selectedAttributes'\n+                @change=\"onDataConnectorChange\"\n+                @isvalid=\"onDataConnectorIsValid\"\n+              ></data-connector>\n+            </div> <!-- column 2 -->\n+          </div> <!-- grid -->\n+        </li> <!-- source tab container -->\n+        <li>\n+          <div uk-grid>\n+            <div class=\"uk-width-1-2\">\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-legend-label\">Legend label</label>\n+                <div class=\"uk-form-controls\">\n+                  <input\n+                    type=\"text\"\n+                    class=\"uk-input\"\n+                    name=\"data-legend-label\"\n+                    id=\"data-legend-label\"\n+                    v-model=\"selectedLegendLabel\">\n+                </div>\n+              </div> <!-- uk-margin -->\n+\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-ploygon-style\">Polygon Style</label>\n+                <div class=\"uk-form-controls\">\n+                  <select v-model=\"selectedPolygonStyle\" class=\"uk-select\" id=\"data-ploygon-style\">\n+                    <option disabled value=\"\">Please select one</option>\n+                    <option :value=\"key\" :key=\"key\" v-for=\"(key, val) in polygonStyleChoices\">{{ val }}</option>\n+                  </select>\n+                </div>\n+              </div> <!-- uk-margin -->\n+\n+            </div> <!-- column 1 -->\n+            <div class=\"uk-width-1-2\">\n+\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-icon\">Icon</label>\n+                <div class=\"uk-form-controls\">\n+                  <select v-model=\"selectedIcon\" class=\"uk-select\" id=\"data-icon\">\n+                    <option disabled value=\"\">Please select one</option>\n+                    <option :value=\"key\" :key=\"key\" v-for=\"(key, val) in iconChoices\">{{ val }}</option>\n+                  </select>\n+                </div>\n+              </div> <!-- uk-margin -->\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-cluster\">\n+                  <input\n+                    id=\"data-cluster\"\n+                    v-model=\"selectedClusterPoints\"\n+                    class=\"uk-checkbox\"\n+                    type=\"checkbox\">\n+                      Cluster Points\n+                </label>\n+              </div> <!-- uk-margin -->\n+\n+            </div> <!-- column 2 -->\n+          </div>\n+        </li> <!-- style tab container -->\n+        <li>\n+          <div uk-grid>\n+            <div class=\"uk-width-1-2\">\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-popover\">Popover Template</label>\n+                <div class=\"uk-form-controls\">\n+                  <textarea v-model=\"selectedPopover\" class=\"uk-textarea uk-height-medium\" id=\"data-popover\"></textarea>\n+                </div>\n+              </div> <!-- uk-margin -->\n+            </div> <!-- column 1 -->\n+            <div class=\"uk-width-1-2\">\n+              <div class=\"uk-margin\">\n+                <label class=\"uk-form-label\" for=\"data-fields\">Available Fields</label>\n+                <div class=\"uk-form-controls\">\n+                  <div class=\"uk-overflow-auto uk-height-medium\" style=\"border:1px solid #e5e5e5\">\n+                    <table class=\"uk-table uk-table-small uk-table-divider uk-table-hover\">\n+                      <tbody>\n+                        <tr v-for=\"field in fields\">\n+                          <td class=\"uk-table-link\">\n+                            <a class=\"uk-link-reset\" href=\"\" @click.stop.prevent @dblclick='onInsertField(field)'>\n+                              {{ field.label }}\n+                            </a>\n+                          </td>\n+                        </tr>\n+                      </tbody>\n+                    </table>\n+                  </div> <!-- overflow -->\n+                </div>\n+              </div>\n+            </div> <!-- column 2 -->\n+          </div>\n+        </li> <!-- popover tab container -->\n+        <li>\n+          <div class=\"uk-panel uk-width-1-1\">\n+            <div class=\"leaflet-pane leaflet-popup-pane\">\n+              <div class=\"leaflet-popup\">\n+                <div class=\"leaflet-popup-content-wrapper\">\n+                  <div class=\"leaflet-popup-content\" v-html=\"samplePopover\" id=\"samplePopover\">\n+                  </div>\n+                </div>\n+                <div class=\"leaflet-popup-tip-container\">\n+                  <div class=\"leaflet-popup-tip\"></div>\n+                </div>\n+                <a class=\"leaflet-popup-close-button\" @click.stop.prevent href=\"#close\">×</a>\n+              </div>\n+            </div>\n+            <div class=\"uk-panel uk-text-center\">\n+              <img :src=\"selectedIcon\" width=\"32\" height=\"32\">\n+            </div>\n+          </div>\n+        </li> <!-- preview tab container -->\n+      </ul>\n+\n+      <div class=\"uk-panel uk-margin\">\n+        <div class=\"uk-float-right\">\n+          <button\n+            type=\"button\"\n+            class=\"uk-button uk-button-default\"\n+            @click=\"onCancel\">Cancel</button>\n+          <button\n+            type=\"button\"\n+            class=\"uk-button uk-button-primary\"\n+            @click=\"onSave\">Save</button>\n+        </div>\n+      </div>\n+    </form>\n+  </div>\n+</template>\n+\n+<script>\n+import DataConnector from './dataconnector.vue'\n+import { validationMixin } from 'vuelidate'\n+import { required } from 'vuelidate/lib/validators'\n+import nanoid from 'nanoid'\n+import store from './store'\n+import templayed from 'templayed'\n+import { ArcGISLayer } from '../lib/arcgis'\n+import { debounce } from 'lodash'\n+\n+export default {\n+  name: 'data-source',\n+  mixins: [validationMixin],\n+  components: {\n+    DataConnector,\n+  },\n+  props: {\n+    uid: {\n+      type: String,\n+      default () { return nanoid() },\n+    },\n+    dataSourceType: {\n+      type: String,\n+      default () { return store.state.dataSourceTypeChoices['CoB ArcGIS'] }\n+    },\n+    dataSourceTypeChoices: {\n+      type: Object,\n+      // default () { return {'CoB ArcGIS': 'cob-arcgis'} }\n+      default () {\n+        return store.state.dataSourceTypeChoices\n+      }\n+    },\n+    attributes: {\n+      type: Object,\n+      default () { return {} }\n+    },\n+    icon: {\n+      type: String,\n+      // default () { return this.iconChoices.default }\n+      default () { return store.state.iconChoices.default }\n+    },\n+    iconChoices: {\n+      type: Object,\n+      default () {\n+        return store.state.iconChoices\n+      }\n+    },\n+    clusterPoints: {\n+      type: Boolean,\n+      default () { return true },\n+    },\n+    polygonStyle: {\n+      type: String,\n+      default () { return 'default' }\n+    },\n+    polygonStyleChoices: {\n+      type: Object,\n+      default () { return store.state.polygonStyleChoices }\n+    },\n+    popover: {\n+      type: String,\n+      default () { return '' }\n+    },\n+    legendLabel: {\n+      type: String,\n+      default () { return '' }\n+    },\n+  },\n+  data () {\n+    return {\n+      selectedDataSourceType: '',\n+      selectedAttributes: {},\n+      selectedIcon: '',\n+      selectedClusterPoints: true,\n+      selectedPolygonStyle: '',\n+      selectedPopover: '',\n+      selectedLegendLabel: '',\n+      fields: [],\n+      validateNow: false,\n+      sampleRow: 1,\n+      datasourceConnector: null,\n+      currentRowCache: {},\n+      // samplePopover: '',\n+    }\n+  },\n+  computed: {\n+    samplePopover: function () {\n+      return templayed(this.selectedPopover)(this.currentRowCache)\n+    },\n+    configObject () {\n+      let c = {\n+        uid: this.uid,\n+        type: this.selectedDataSourceType,\n+        icon: this.selectedIcon,\n+        clusterIcons: this.selectedClusterPoints,\n+        polygonStyle: this.selectedPolygonStyle,\n+        popover: this.selectedPopover,\n+        attributes: Object.assign({}, this.selectedAttributes),\n+        legendLabel: this.selectedLegendLabel,\n+      }\n+      return c\n+    },\n+    editMode () { return 'Edit' },\n+    label () {\n+      if (this.selectedLegendLabel) {\n+        return this.selectedLegendLabel\n+      }\n+      let attrs = []\n+      if (this.selectedDataSourceType === 'cob-arcgis') {\n+        let svc = this.selectedAttributes.service.split('/')\n+        attrs.push(`service: ${svc[svc.length - 2]}`)\n+        attrs.push(`layer: ${this.selectedAttributes.layer}`)\n+      } else {\n+        for (let prop in this.selectedAttributes) {\n+          attrs.push(`${prop}: ${this.selectedAttributes[prop]}`)\n+        }\n+      }\n+      return `${this.selectedDataSourceType}: ${attrs.join(', ')}`\n+    }\n+  },\n+  methods: {\n+    onInsertField (field) {\n+      let textArea = document.getElementById('data-popover')\n+      let selStart = textArea.selectionStart\n+      let selEnd = textArea.selectionEnd\n+      let oldText = this.selectedPopover\n+      let before = oldText.substring(0, selStart)\n+      let after = oldText.substring(selEnd, this.selectedPopover.length)\n+      let newstuff = `${before}{{${field.label}}}${after}`\n+      let newEnd = selStart + field.label.length + 4\n+      this.selectedPopover = newstuff\n+\n+      // Wait for the next DOM update to set the selection range\n+      this.$nextTick(function () {\n+        textArea.setSelectionRange(newEnd, newEnd)\n+        textArea.focus()\n+      })\n+    },\n+    onDataSourceTypeChange (event) {\n+      console.log('onDataSourceTypeChange')\n+    },\n+    onCancel (event) {\n+      this.$emit('cancel')\n+    },\n+    async onSave (event) {\n+      const isValid = await this.isValid()\n+      if (isValid) {\n+        this.$emit('save', this.configObject)\n+      }\n+    },\n+    onDataConnectorChange (values) {\n+      this.datasourceConnector = new ArcGISLayer(values.attributes.service, values.attributes.layer)\n+      this.selectedAttributes = values.attributes\n+      this.fields = values.fields\n+      this.datasourceConnector.getRows(this.sampleRow, 1).then(value => {\n+        let newVal = {}\n+        for (let prop in value[0]) {\n+          if (typeof value[0][prop] === 'string') {\n+            newVal[prop] = value[0][prop].trim()\n+          } else {\n+            newVal[prop] = value[0][prop]\n+          }\n+        }\n+        this.currentRowCache = newVal\n+      })\n+    },\n+    onDataConnectorIsValid (value) {\n+      this.validateNow = false\n+      this.$emit('dcisvalid', value)\n+    },\n+    samplePopoverGenerator: debounce(function () {\n+      return templayed(this.selectedPopover)(this.currentRowCache)\n+    }),\n+    waitForValidation () {\n+      return new Promise(resolve => {\n+        if (this.$v.$error || !this.$v.$pending) {\n+          return resolve()\n+        }\n+        let poll = setInterval(() => {\n+          if (!this.$v.$pending) {\n+            clearInterval(poll)\n+            resolve()\n+          }\n+        }, 200)\n+      })\n+    },\n+    async isValid () {\n+      this.$v.$reset()\n+      this.$v.$touch()\n+      await this.waitForValidation()\n+      return Promise.resolve(!this.$v.$error)\n+    },\n+    validateDataConnector () {\n+      return new Promise((resolve, reject) => {\n+        this.$once('dcisvalid', function (value) {","path":"src/components/datasource.vue","position":352,"original_position":352,"commit_id":"d3b5fe6b7b5543b7e6a8620d75ec8de856fdd805","original_commit_id":"d3b5fe6b7b5543b7e6a8620d75ec8de856fdd805","user":{"login":"coordt","id":96330,"avatar_url":"https://avatars1.githubusercontent.com/u/96330?v=4","gravatar_id":"","url":"https://api.github.com/users/coordt","html_url":"https://github.com/coordt","followers_url":"https://api.github.com/users/coordt/followers","following_url":"https://api.github.com/users/coordt/following{/other_user}","gists_url":"https://api.github.com/users/coordt/gists{/gist_id}","starred_url":"https://api.github.com/users/coordt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coordt/subscriptions","organizations_url":"https://api.github.com/users/coordt/orgs","repos_url":"https://api.github.com/users/coordt/repos","events_url":"https://api.github.com/users/coordt/events{/privacy}","received_events_url":"https://api.github.com/users/coordt/received_events","type":"User","site_admin":false},"body":"Just figured out a better way, using refs. I can now call the appropriate methods on the child component directly.","created_at":"2018-03-01T15:57:44Z","updated_at":"2018-03-01T15:57:44Z","html_url":"https://github.com/CityOfBoston/vizwiz/pull/6#discussion_r171604016","pull_request_url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/comments/171604016"},"html":{"href":"https://github.com/CityOfBoston/vizwiz/pull/6#discussion_r171604016"},"pull_request":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6"}},"in_reply_to_id":171309220},"pull_request":{"url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6","id":171948418,"html_url":"https://github.com/CityOfBoston/vizwiz/pull/6","diff_url":"https://github.com/CityOfBoston/vizwiz/pull/6.diff","patch_url":"https://github.com/CityOfBoston/vizwiz/pull/6.patch","issue_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/6","number":6,"state":"open","locked":false,"title":"The proof of concept vizwiz generator","user":{"login":"coordt","id":96330,"avatar_url":"https://avatars1.githubusercontent.com/u/96330?v=4","gravatar_id":"","url":"https://api.github.com/users/coordt","html_url":"https://github.com/coordt","followers_url":"https://api.github.com/users/coordt/followers","following_url":"https://api.github.com/users/coordt/following{/other_user}","gists_url":"https://api.github.com/users/coordt/gists{/gist_id}","starred_url":"https://api.github.com/users/coordt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coordt/subscriptions","organizations_url":"https://api.github.com/users/coordt/orgs","repos_url":"https://api.github.com/users/coordt/repos","events_url":"https://api.github.com/users/coordt/events{/privacy}","received_events_url":"https://api.github.com/users/coordt/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-02-28T13:08:59Z","updated_at":"2018-03-01T15:57:44Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f46f4be82b31a215696b9077411b86c65f6d2825","assignee":{"login":"coordt","id":96330,"avatar_url":"https://avatars1.githubusercontent.com/u/96330?v=4","gravatar_id":"","url":"https://api.github.com/users/coordt","html_url":"https://github.com/coordt","followers_url":"https://api.github.com/users/coordt/followers","following_url":"https://api.github.com/users/coordt/following{/other_user}","gists_url":"https://api.github.com/users/coordt/gists{/gist_id}","starred_url":"https://api.github.com/users/coordt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coordt/subscriptions","organizations_url":"https://api.github.com/users/coordt/orgs","repos_url":"https://api.github.com/users/coordt/repos","events_url":"https://api.github.com/users/coordt/events{/privacy}","received_events_url":"https://api.github.com/users/coordt/received_events","type":"User","site_admin":false},"assignees":[{"login":"coordt","id":96330,"avatar_url":"https://avatars1.githubusercontent.com/u/96330?v=4","gravatar_id":"","url":"https://api.github.com/users/coordt","html_url":"https://github.com/coordt","followers_url":"https://api.github.com/users/coordt/followers","following_url":"https://api.github.com/users/coordt/following{/other_user}","gists_url":"https://api.github.com/users/coordt/gists{/gist_id}","starred_url":"https://api.github.com/users/coordt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/coordt/subscriptions","organizations_url":"https://api.github.com/users/coordt/orgs","repos_url":"https://api.github.com/users/coordt/repos","events_url":"https://api.github.com/users/coordt/events{/privacy}","received_events_url":"https://api.github.com/users/coordt/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6/commits","review_comments_url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6/comments","review_comment_url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/comments{/number}","comments_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/6/comments","statuses_url":"https://api.github.com/repos/CityOfBoston/vizwiz/statuses/d3b5fe6b7b5543b7e6a8620d75ec8de856fdd805","head":{"label":"CityOfBoston:poc","ref":"poc","sha":"d3b5fe6b7b5543b7e6a8620d75ec8de856fdd805","user":{"login":"CityOfBoston","id":4692291,"avatar_url":"https://avatars1.githubusercontent.com/u/4692291?v=4","gravatar_id":"","url":"https://api.github.com/users/CityOfBoston","html_url":"https://github.com/CityOfBoston","followers_url":"https://api.github.com/users/CityOfBoston/followers","following_url":"https://api.github.com/users/CityOfBoston/following{/other_user}","gists_url":"https://api.github.com/users/CityOfBoston/gists{/gist_id}","starred_url":"https://api.github.com/users/CityOfBoston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CityOfBoston/subscriptions","organizations_url":"https://api.github.com/users/CityOfBoston/orgs","repos_url":"https://api.github.com/users/CityOfBoston/repos","events_url":"https://api.github.com/users/CityOfBoston/events{/privacy}","received_events_url":"https://api.github.com/users/CityOfBoston/received_events","type":"Organization","site_admin":false},"repo":{"id":116406912,"name":"vizwiz","full_name":"CityOfBoston/vizwiz","owner":{"login":"CityOfBoston","id":4692291,"avatar_url":"https://avatars1.githubusercontent.com/u/4692291?v=4","gravatar_id":"","url":"https://api.github.com/users/CityOfBoston","html_url":"https://github.com/CityOfBoston","followers_url":"https://api.github.com/users/CityOfBoston/followers","following_url":"https://api.github.com/users/CityOfBoston/following{/other_user}","gists_url":"https://api.github.com/users/CityOfBoston/gists{/gist_id}","starred_url":"https://api.github.com/users/CityOfBoston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CityOfBoston/subscriptions","organizations_url":"https://api.github.com/users/CityOfBoston/orgs","repos_url":"https://api.github.com/users/CityOfBoston/repos","events_url":"https://api.github.com/users/CityOfBoston/events{/privacy}","received_events_url":"https://api.github.com/users/CityOfBoston/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/CityOfBoston/vizwiz","description":null,"fork":false,"url":"https://api.github.com/repos/CityOfBoston/vizwiz","forks_url":"https://api.github.com/repos/CityOfBoston/vizwiz/forks","keys_url":"https://api.github.com/repos/CityOfBoston/vizwiz/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CityOfBoston/vizwiz/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CityOfBoston/vizwiz/teams","hooks_url":"https://api.github.com/repos/CityOfBoston/vizwiz/hooks","issue_events_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/events{/number}","events_url":"https://api.github.com/repos/CityOfBoston/vizwiz/events","assignees_url":"https://api.github.com/repos/CityOfBoston/vizwiz/assignees{/user}","branches_url":"https://api.github.com/repos/CityOfBoston/vizwiz/branches{/branch}","tags_url":"https://api.github.com/repos/CityOfBoston/vizwiz/tags","blobs_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/refs{/sha}","trees_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CityOfBoston/vizwiz/statuses/{sha}","languages_url":"https://api.github.com/repos/CityOfBoston/vizwiz/languages","stargazers_url":"https://api.github.com/repos/CityOfBoston/vizwiz/stargazers","contributors_url":"https://api.github.com/repos/CityOfBoston/vizwiz/contributors","subscribers_url":"https://api.github.com/repos/CityOfBoston/vizwiz/subscribers","subscription_url":"https://api.github.com/repos/CityOfBoston/vizwiz/subscription","commits_url":"https://api.github.com/repos/CityOfBoston/vizwiz/commits{/sha}","git_commits_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/commits{/sha}","comments_url":"https://api.github.com/repos/CityOfBoston/vizwiz/comments{/number}","issue_comment_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/comments{/number}","contents_url":"https://api.github.com/repos/CityOfBoston/vizwiz/contents/{+path}","compare_url":"https://api.github.com/repos/CityOfBoston/vizwiz/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CityOfBoston/vizwiz/merges","archive_url":"https://api.github.com/repos/CityOfBoston/vizwiz/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CityOfBoston/vizwiz/downloads","issues_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues{/number}","pulls_url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls{/number}","milestones_url":"https://api.github.com/repos/CityOfBoston/vizwiz/milestones{/number}","notifications_url":"https://api.github.com/repos/CityOfBoston/vizwiz/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CityOfBoston/vizwiz/labels{/name}","releases_url":"https://api.github.com/repos/CityOfBoston/vizwiz/releases{/id}","deployments_url":"https://api.github.com/repos/CityOfBoston/vizwiz/deployments","created_at":"2018-01-05T16:52:12Z","updated_at":"2018-01-05T17:13:11Z","pushed_at":"2018-02-28T13:09:00Z","git_url":"git://github.com/CityOfBoston/vizwiz.git","ssh_url":"git@github.com:CityOfBoston/vizwiz.git","clone_url":"https://github.com/CityOfBoston/vizwiz.git","svn_url":"https://github.com/CityOfBoston/vizwiz","homepage":null,"size":1914,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":5,"license":null,"forks":0,"open_issues":5,"watchers":0,"default_branch":"master"}},"base":{"label":"CityOfBoston:master","ref":"master","sha":"6d9731475277536e75dd796d92f3859ed6b3ec18","user":{"login":"CityOfBoston","id":4692291,"avatar_url":"https://avatars1.githubusercontent.com/u/4692291?v=4","gravatar_id":"","url":"https://api.github.com/users/CityOfBoston","html_url":"https://github.com/CityOfBoston","followers_url":"https://api.github.com/users/CityOfBoston/followers","following_url":"https://api.github.com/users/CityOfBoston/following{/other_user}","gists_url":"https://api.github.com/users/CityOfBoston/gists{/gist_id}","starred_url":"https://api.github.com/users/CityOfBoston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CityOfBoston/subscriptions","organizations_url":"https://api.github.com/users/CityOfBoston/orgs","repos_url":"https://api.github.com/users/CityOfBoston/repos","events_url":"https://api.github.com/users/CityOfBoston/events{/privacy}","received_events_url":"https://api.github.com/users/CityOfBoston/received_events","type":"Organization","site_admin":false},"repo":{"id":116406912,"name":"vizwiz","full_name":"CityOfBoston/vizwiz","owner":{"login":"CityOfBoston","id":4692291,"avatar_url":"https://avatars1.githubusercontent.com/u/4692291?v=4","gravatar_id":"","url":"https://api.github.com/users/CityOfBoston","html_url":"https://github.com/CityOfBoston","followers_url":"https://api.github.com/users/CityOfBoston/followers","following_url":"https://api.github.com/users/CityOfBoston/following{/other_user}","gists_url":"https://api.github.com/users/CityOfBoston/gists{/gist_id}","starred_url":"https://api.github.com/users/CityOfBoston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CityOfBoston/subscriptions","organizations_url":"https://api.github.com/users/CityOfBoston/orgs","repos_url":"https://api.github.com/users/CityOfBoston/repos","events_url":"https://api.github.com/users/CityOfBoston/events{/privacy}","received_events_url":"https://api.github.com/users/CityOfBoston/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/CityOfBoston/vizwiz","description":null,"fork":false,"url":"https://api.github.com/repos/CityOfBoston/vizwiz","forks_url":"https://api.github.com/repos/CityOfBoston/vizwiz/forks","keys_url":"https://api.github.com/repos/CityOfBoston/vizwiz/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CityOfBoston/vizwiz/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CityOfBoston/vizwiz/teams","hooks_url":"https://api.github.com/repos/CityOfBoston/vizwiz/hooks","issue_events_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/events{/number}","events_url":"https://api.github.com/repos/CityOfBoston/vizwiz/events","assignees_url":"https://api.github.com/repos/CityOfBoston/vizwiz/assignees{/user}","branches_url":"https://api.github.com/repos/CityOfBoston/vizwiz/branches{/branch}","tags_url":"https://api.github.com/repos/CityOfBoston/vizwiz/tags","blobs_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/refs{/sha}","trees_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CityOfBoston/vizwiz/statuses/{sha}","languages_url":"https://api.github.com/repos/CityOfBoston/vizwiz/languages","stargazers_url":"https://api.github.com/repos/CityOfBoston/vizwiz/stargazers","contributors_url":"https://api.github.com/repos/CityOfBoston/vizwiz/contributors","subscribers_url":"https://api.github.com/repos/CityOfBoston/vizwiz/subscribers","subscription_url":"https://api.github.com/repos/CityOfBoston/vizwiz/subscription","commits_url":"https://api.github.com/repos/CityOfBoston/vizwiz/commits{/sha}","git_commits_url":"https://api.github.com/repos/CityOfBoston/vizwiz/git/commits{/sha}","comments_url":"https://api.github.com/repos/CityOfBoston/vizwiz/comments{/number}","issue_comment_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/comments{/number}","contents_url":"https://api.github.com/repos/CityOfBoston/vizwiz/contents/{+path}","compare_url":"https://api.github.com/repos/CityOfBoston/vizwiz/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CityOfBoston/vizwiz/merges","archive_url":"https://api.github.com/repos/CityOfBoston/vizwiz/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CityOfBoston/vizwiz/downloads","issues_url":"https://api.github.com/repos/CityOfBoston/vizwiz/issues{/number}","pulls_url":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls{/number}","milestones_url":"https://api.github.com/repos/CityOfBoston/vizwiz/milestones{/number}","notifications_url":"https://api.github.com/repos/CityOfBoston/vizwiz/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CityOfBoston/vizwiz/labels{/name}","releases_url":"https://api.github.com/repos/CityOfBoston/vizwiz/releases{/id}","deployments_url":"https://api.github.com/repos/CityOfBoston/vizwiz/deployments","created_at":"2018-01-05T16:52:12Z","updated_at":"2018-01-05T17:13:11Z","pushed_at":"2018-02-28T13:09:00Z","git_url":"git://github.com/CityOfBoston/vizwiz.git","ssh_url":"git@github.com:CityOfBoston/vizwiz.git","clone_url":"https://github.com/CityOfBoston/vizwiz.git","svn_url":"https://github.com/CityOfBoston/vizwiz","homepage":null,"size":1914,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":5,"license":null,"forks":0,"open_issues":5,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6"},"html":{"href":"https://github.com/CityOfBoston/vizwiz/pull/6"},"issue":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/6"},"comments":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/issues/6/comments"},"review_comments":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6/comments"},"review_comment":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/pulls/6/commits"},"statuses":{"href":"https://api.github.com/repos/CityOfBoston/vizwiz/statuses/d3b5fe6b7b5543b7e6a8620d75ec8de856fdd805"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"coordt"}}