{"action":"created","comment":{"url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/comments/209491215","pull_request_review_id":145514177,"id":209491215,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwOTQ5MTIxNQ==","diff_hunk":"@@ -0,0 +1,118 @@\n+\n+// Mixins\n+import mixins from '../../../util/mixins'\n+import Themeable from '../../../mixins/themeable'\n+import Colorable from '../../../mixins/colorable'\n+import Times from './times'\n+import Mouse from './mouse'\n+\n+// Util\n+import {\n+  VTimestamp,\n+  VTimestampFormatter,\n+  validateTimestamp,\n+  parseTimestamp,\n+  getWeekdaySkips,\n+  createDayList,\n+  createNativeLocaleFormatter\n+} from '../util/timestamp'\n+\n+/* @vue/component */\n+export default mixins(Colorable, Themeable, Times, Mouse).extend({\n+  name: 'calendar-base',\n+\n+  // depends on: maxDays\n+\n+  props: {\n+    start: {\n+      type: String,\n+      required: true,\n+      validate: validateTimestamp\n+    },\n+    end: {\n+      type: String,\n+      validate: validateTimestamp,\n+      default: '0000-00-00'\n+    },\n+    weekdays: {\n+      type: Array as () => number[],\n+      default: () => [0, 1, 2, 3, 4, 5, 6]\n+    },\n+    hideHeader: {\n+      type: Boolean,\n+      default: false\n+    },\n+    shortWeekdays: {\n+      type: Boolean,\n+      default: true\n+    },\n+    weekdayFormat: {\n+      type: Function, // VTimestampFormatter<string>,\n+      default: null\n+    },\n+    dayFormat: {\n+      type: Function, // VTimestampFormatter<string>,\n+      default: null\n+    },\n+    locale: {\n+      type: String,\n+      default: 'en-us'\n+    }\n+  },\n+\n+  data: () => ({\n+    defaultColor: 'primary'\n+  }),\n+\n+  computed: {\n+    weekdaySkips (): number[] {\n+      return getWeekdaySkips(this.weekdays)\n+    },\n+    parsedStart (): VTimestamp {\n+      return parseTimestamp(this.start) as VTimestamp","path":"src/components/VCalendar/mixins/calendar-base.ts","position":72,"original_position":72,"commit_id":"3167f05ce51c205d33b2bfca197a2f1c9bd29b75","original_commit_id":"3167f05ce51c205d33b2bfca197a2f1c9bd29b75","user":{"login":"ClickerMonkey","id":421233,"node_id":"MDQ6VXNlcjQyMTIzMw==","avatar_url":"https://avatars2.githubusercontent.com/u/421233?v=4","gravatar_id":"","url":"https://api.github.com/users/ClickerMonkey","html_url":"https://github.com/ClickerMonkey","followers_url":"https://api.github.com/users/ClickerMonkey/followers","following_url":"https://api.github.com/users/ClickerMonkey/following{/other_user}","gists_url":"https://api.github.com/users/ClickerMonkey/gists{/gist_id}","starred_url":"https://api.github.com/users/ClickerMonkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ClickerMonkey/subscriptions","organizations_url":"https://api.github.com/users/ClickerMonkey/orgs","repos_url":"https://api.github.com/users/ClickerMonkey/repos","events_url":"https://api.github.com/users/ClickerMonkey/events{/privacy}","received_events_url":"https://api.github.com/users/ClickerMonkey/received_events","type":"User","site_admin":false},"body":"That will have a cascading effect, having to change the signature of dozens of functions even though I know at this point it should be non-null - since I've validated its format this should always return a VTimestamp. The cast here was necessary due to linting.","created_at":"2018-08-13T04:50:10Z","updated_at":"2018-08-13T04:50:10Z","html_url":"https://github.com/vuetifyjs/vuetify/pull/4846#discussion_r209491215","pull_request_url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/comments/209491215"},"html":{"href":"https://github.com/vuetifyjs/vuetify/pull/4846#discussion_r209491215"},"pull_request":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846"}},"in_reply_to_id":209484024},"pull_request":{"url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846","id":207837610,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA3ODM3NjEw","html_url":"https://github.com/vuetifyjs/vuetify/pull/4846","diff_url":"https://github.com/vuetifyjs/vuetify/pull/4846.diff","patch_url":"https://github.com/vuetifyjs/vuetify/pull/4846.patch","issue_url":"https://api.github.com/repos/vuetifyjs/vuetify/issues/4846","number":4846,"state":"open","locked":false,"title":"feat(v-calendar-daily): create new component","user":{"login":"ClickerMonkey","id":421233,"node_id":"MDQ6VXNlcjQyMTIzMw==","avatar_url":"https://avatars2.githubusercontent.com/u/421233?v=4","gravatar_id":"","url":"https://api.github.com/users/ClickerMonkey","html_url":"https://github.com/ClickerMonkey","followers_url":"https://api.github.com/users/ClickerMonkey/followers","following_url":"https://api.github.com/users/ClickerMonkey/following{/other_user}","gists_url":"https://api.github.com/users/ClickerMonkey/gists{/gist_id}","starred_url":"https://api.github.com/users/ClickerMonkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ClickerMonkey/subscriptions","organizations_url":"https://api.github.com/users/ClickerMonkey/orgs","repos_url":"https://api.github.com/users/ClickerMonkey/repos","events_url":"https://api.github.com/users/ClickerMonkey/events{/privacy}","received_events_url":"https://api.github.com/users/ClickerMonkey/received_events","type":"User","site_admin":false},"body":"<!--\r\nMAKE SURE TO READ THE CONTRIBUTING GUIDE BEFORE CREATING A PR\r\nhttps://github.com/vuetifyjs/vuetify/blob/master/.github/CONTRIBUTING.md\r\n-->\r\n\r\n<!-- Provide a general summary of your changes in the Title above -->\r\n<!-- Keep the title short and descriptive, as it will be used as a commit message -->\r\n\r\n## Description\r\nThe beginnings of a Calendar component for Vuetify.\r\nYou can tinker with the component by copying [this code](https://gist.github.com/ClickerMonkey/b9ffa574b54c8f9b94207df4d06f7804) into Playground.vue\r\n\r\n## Motivation and Context\r\nThis introduces the v-calendar and v-calendar-daily component. Once the other v-calendar components are done v-calendar will be updated.\r\n\r\n## How Has This Been Tested?\r\nVisually on various browsers with the above Playground code.\r\n\r\n## Markup:\r\n<!--- Paste markup for testing your change --->\r\nhttps://gist.github.com/ClickerMonkey/b9ffa574b54c8f9b94207df4d06f7804\r\n\r\n## Types of changes\r\n<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->\r\n- [ ] Bug fix (non-breaking change which fixes an issue)\r\n- [x] New feature (non-breaking change which adds functionality)\r\n- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)\r\n- [ ] Improvement/refactoring (non-breaking change that doesn't add any feature but make things better)\r\n\r\n## Checklist:\r\n<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->\r\n<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->\r\n- [x] The PR title is no longer than 64 characters.\r\n- [x] The PR is submitted to the correct branch (`master` for bug fixes, `dev` for new features and breaking changes).\r\n- [x] My code follows the code style of this project.\r\n- [x] My change requires a change to the documentation.\r\n- [ ] I have created a PR in the [documentation](https://github.com/vuetifyjs/vuetifyjs.com) with the necessary changes.\r\n","created_at":"2018-08-12T19:57:06Z","updated_at":"2018-08-13T04:50:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e56bc844c5f37058416ea25dd9d3c7ac97ac0c16","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846/commits","review_comments_url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846/comments","review_comment_url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/comments{/number}","comments_url":"https://api.github.com/repos/vuetifyjs/vuetify/issues/4846/comments","statuses_url":"https://api.github.com/repos/vuetifyjs/vuetify/statuses/3167f05ce51c205d33b2bfca197a2f1c9bd29b75","head":{"label":"ClickerMonkey:dev","ref":"dev","sha":"3167f05ce51c205d33b2bfca197a2f1c9bd29b75","user":{"login":"ClickerMonkey","id":421233,"node_id":"MDQ6VXNlcjQyMTIzMw==","avatar_url":"https://avatars2.githubusercontent.com/u/421233?v=4","gravatar_id":"","url":"https://api.github.com/users/ClickerMonkey","html_url":"https://github.com/ClickerMonkey","followers_url":"https://api.github.com/users/ClickerMonkey/followers","following_url":"https://api.github.com/users/ClickerMonkey/following{/other_user}","gists_url":"https://api.github.com/users/ClickerMonkey/gists{/gist_id}","starred_url":"https://api.github.com/users/ClickerMonkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ClickerMonkey/subscriptions","organizations_url":"https://api.github.com/users/ClickerMonkey/orgs","repos_url":"https://api.github.com/users/ClickerMonkey/repos","events_url":"https://api.github.com/users/ClickerMonkey/events{/privacy}","received_events_url":"https://api.github.com/users/ClickerMonkey/received_events","type":"User","site_admin":false},"repo":{"id":143948599,"node_id":"MDEwOlJlcG9zaXRvcnkxNDM5NDg1OTk=","name":"vuetify","full_name":"ClickerMonkey/vuetify","owner":{"login":"ClickerMonkey","id":421233,"node_id":"MDQ6VXNlcjQyMTIzMw==","avatar_url":"https://avatars2.githubusercontent.com/u/421233?v=4","gravatar_id":"","url":"https://api.github.com/users/ClickerMonkey","html_url":"https://github.com/ClickerMonkey","followers_url":"https://api.github.com/users/ClickerMonkey/followers","following_url":"https://api.github.com/users/ClickerMonkey/following{/other_user}","gists_url":"https://api.github.com/users/ClickerMonkey/gists{/gist_id}","starred_url":"https://api.github.com/users/ClickerMonkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ClickerMonkey/subscriptions","organizations_url":"https://api.github.com/users/ClickerMonkey/orgs","repos_url":"https://api.github.com/users/ClickerMonkey/repos","events_url":"https://api.github.com/users/ClickerMonkey/events{/privacy}","received_events_url":"https://api.github.com/users/ClickerMonkey/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ClickerMonkey/vuetify","description":"Material Component Framework for Vue.js 2","fork":true,"url":"https://api.github.com/repos/ClickerMonkey/vuetify","forks_url":"https://api.github.com/repos/ClickerMonkey/vuetify/forks","keys_url":"https://api.github.com/repos/ClickerMonkey/vuetify/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ClickerMonkey/vuetify/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ClickerMonkey/vuetify/teams","hooks_url":"https://api.github.com/repos/ClickerMonkey/vuetify/hooks","issue_events_url":"https://api.github.com/repos/ClickerMonkey/vuetify/issues/events{/number}","events_url":"https://api.github.com/repos/ClickerMonkey/vuetify/events","assignees_url":"https://api.github.com/repos/ClickerMonkey/vuetify/assignees{/user}","branches_url":"https://api.github.com/repos/ClickerMonkey/vuetify/branches{/branch}","tags_url":"https://api.github.com/repos/ClickerMonkey/vuetify/tags","blobs_url":"https://api.github.com/repos/ClickerMonkey/vuetify/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ClickerMonkey/vuetify/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ClickerMonkey/vuetify/git/refs{/sha}","trees_url":"https://api.github.com/repos/ClickerMonkey/vuetify/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ClickerMonkey/vuetify/statuses/{sha}","languages_url":"https://api.github.com/repos/ClickerMonkey/vuetify/languages","stargazers_url":"https://api.github.com/repos/ClickerMonkey/vuetify/stargazers","contributors_url":"https://api.github.com/repos/ClickerMonkey/vuetify/contributors","subscribers_url":"https://api.github.com/repos/ClickerMonkey/vuetify/subscribers","subscription_url":"https://api.github.com/repos/ClickerMonkey/vuetify/subscription","commits_url":"https://api.github.com/repos/ClickerMonkey/vuetify/commits{/sha}","git_commits_url":"https://api.github.com/repos/ClickerMonkey/vuetify/git/commits{/sha}","comments_url":"https://api.github.com/repos/ClickerMonkey/vuetify/comments{/number}","issue_comment_url":"https://api.github.com/repos/ClickerMonkey/vuetify/issues/comments{/number}","contents_url":"https://api.github.com/repos/ClickerMonkey/vuetify/contents/{+path}","compare_url":"https://api.github.com/repos/ClickerMonkey/vuetify/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ClickerMonkey/vuetify/merges","archive_url":"https://api.github.com/repos/ClickerMonkey/vuetify/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ClickerMonkey/vuetify/downloads","issues_url":"https://api.github.com/repos/ClickerMonkey/vuetify/issues{/number}","pulls_url":"https://api.github.com/repos/ClickerMonkey/vuetify/pulls{/number}","milestones_url":"https://api.github.com/repos/ClickerMonkey/vuetify/milestones{/number}","notifications_url":"https://api.github.com/repos/ClickerMonkey/vuetify/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ClickerMonkey/vuetify/labels{/name}","releases_url":"https://api.github.com/repos/ClickerMonkey/vuetify/releases{/id}","deployments_url":"https://api.github.com/repos/ClickerMonkey/vuetify/deployments","created_at":"2018-08-08T02:08:03Z","updated_at":"2018-08-12T19:50:46Z","pushed_at":"2018-08-12T19:50:45Z","git_url":"git://github.com/ClickerMonkey/vuetify.git","ssh_url":"git@github.com:ClickerMonkey/vuetify.git","clone_url":"https://github.com/ClickerMonkey/vuetify.git","svn_url":"https://github.com/ClickerMonkey/vuetify","homepage":"https://vuetifyjs.com","size":14891,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"dev"}},"base":{"label":"vuetifyjs:dev","ref":"dev","sha":"585798d17ef7e2cc8078f80469836c37517e446e","user":{"login":"vuetifyjs","id":22138497,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIyMTM4NDk3","avatar_url":"https://avatars3.githubusercontent.com/u/22138497?v=4","gravatar_id":"","url":"https://api.github.com/users/vuetifyjs","html_url":"https://github.com/vuetifyjs","followers_url":"https://api.github.com/users/vuetifyjs/followers","following_url":"https://api.github.com/users/vuetifyjs/following{/other_user}","gists_url":"https://api.github.com/users/vuetifyjs/gists{/gist_id}","starred_url":"https://api.github.com/users/vuetifyjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vuetifyjs/subscriptions","organizations_url":"https://api.github.com/users/vuetifyjs/orgs","repos_url":"https://api.github.com/users/vuetifyjs/repos","events_url":"https://api.github.com/users/vuetifyjs/events{/privacy}","received_events_url":"https://api.github.com/users/vuetifyjs/received_events","type":"Organization","site_admin":false},"repo":{"id":67962648,"node_id":"MDEwOlJlcG9zaXRvcnk2Nzk2MjY0OA==","name":"vuetify","full_name":"vuetifyjs/vuetify","owner":{"login":"vuetifyjs","id":22138497,"node_id":"MDEyOk9yZ2FuaXphdGlvbjIyMTM4NDk3","avatar_url":"https://avatars3.githubusercontent.com/u/22138497?v=4","gravatar_id":"","url":"https://api.github.com/users/vuetifyjs","html_url":"https://github.com/vuetifyjs","followers_url":"https://api.github.com/users/vuetifyjs/followers","following_url":"https://api.github.com/users/vuetifyjs/following{/other_user}","gists_url":"https://api.github.com/users/vuetifyjs/gists{/gist_id}","starred_url":"https://api.github.com/users/vuetifyjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vuetifyjs/subscriptions","organizations_url":"https://api.github.com/users/vuetifyjs/orgs","repos_url":"https://api.github.com/users/vuetifyjs/repos","events_url":"https://api.github.com/users/vuetifyjs/events{/privacy}","received_events_url":"https://api.github.com/users/vuetifyjs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/vuetifyjs/vuetify","description":"Material Component Framework for Vue.js 2","fork":false,"url":"https://api.github.com/repos/vuetifyjs/vuetify","forks_url":"https://api.github.com/repos/vuetifyjs/vuetify/forks","keys_url":"https://api.github.com/repos/vuetifyjs/vuetify/keys{/key_id}","collaborators_url":"https://api.github.com/repos/vuetifyjs/vuetify/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/vuetifyjs/vuetify/teams","hooks_url":"https://api.github.com/repos/vuetifyjs/vuetify/hooks","issue_events_url":"https://api.github.com/repos/vuetifyjs/vuetify/issues/events{/number}","events_url":"https://api.github.com/repos/vuetifyjs/vuetify/events","assignees_url":"https://api.github.com/repos/vuetifyjs/vuetify/assignees{/user}","branches_url":"https://api.github.com/repos/vuetifyjs/vuetify/branches{/branch}","tags_url":"https://api.github.com/repos/vuetifyjs/vuetify/tags","blobs_url":"https://api.github.com/repos/vuetifyjs/vuetify/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/vuetifyjs/vuetify/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/vuetifyjs/vuetify/git/refs{/sha}","trees_url":"https://api.github.com/repos/vuetifyjs/vuetify/git/trees{/sha}","statuses_url":"https://api.github.com/repos/vuetifyjs/vuetify/statuses/{sha}","languages_url":"https://api.github.com/repos/vuetifyjs/vuetify/languages","stargazers_url":"https://api.github.com/repos/vuetifyjs/vuetify/stargazers","contributors_url":"https://api.github.com/repos/vuetifyjs/vuetify/contributors","subscribers_url":"https://api.github.com/repos/vuetifyjs/vuetify/subscribers","subscription_url":"https://api.github.com/repos/vuetifyjs/vuetify/subscription","commits_url":"https://api.github.com/repos/vuetifyjs/vuetify/commits{/sha}","git_commits_url":"https://api.github.com/repos/vuetifyjs/vuetify/git/commits{/sha}","comments_url":"https://api.github.com/repos/vuetifyjs/vuetify/comments{/number}","issue_comment_url":"https://api.github.com/repos/vuetifyjs/vuetify/issues/comments{/number}","contents_url":"https://api.github.com/repos/vuetifyjs/vuetify/contents/{+path}","compare_url":"https://api.github.com/repos/vuetifyjs/vuetify/compare/{base}...{head}","merges_url":"https://api.github.com/repos/vuetifyjs/vuetify/merges","archive_url":"https://api.github.com/repos/vuetifyjs/vuetify/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/vuetifyjs/vuetify/downloads","issues_url":"https://api.github.com/repos/vuetifyjs/vuetify/issues{/number}","pulls_url":"https://api.github.com/repos/vuetifyjs/vuetify/pulls{/number}","milestones_url":"https://api.github.com/repos/vuetifyjs/vuetify/milestones{/number}","notifications_url":"https://api.github.com/repos/vuetifyjs/vuetify/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/vuetifyjs/vuetify/labels{/name}","releases_url":"https://api.github.com/repos/vuetifyjs/vuetify/releases{/id}","deployments_url":"https://api.github.com/repos/vuetifyjs/vuetify/deployments","created_at":"2016-09-12T00:39:35Z","updated_at":"2018-08-13T03:11:38Z","pushed_at":"2018-08-13T02:25:20Z","git_url":"git://github.com/vuetifyjs/vuetify.git","ssh_url":"git@github.com:vuetifyjs/vuetify.git","clone_url":"https://github.com/vuetifyjs/vuetify.git","svn_url":"https://github.com/vuetifyjs/vuetify","homepage":"https://vuetifyjs.com","size":14901,"stargazers_count":12563,"watchers_count":12563,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1078,"mirror_url":null,"archived":false,"open_issues_count":435,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":1078,"open_issues":435,"watchers":12563,"default_branch":"dev"}},"_links":{"self":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846"},"html":{"href":"https://github.com/vuetifyjs/vuetify/pull/4846"},"issue":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/issues/4846"},"comments":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/issues/4846/comments"},"review_comments":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846/comments"},"review_comment":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/pulls/4846/commits"},"statuses":{"href":"https://api.github.com/repos/vuetifyjs/vuetify/statuses/3167f05ce51c205d33b2bfca197a2f1c9bd29b75"}},"author_association":"NONE"}}
{"actor":{"display_login":"ClickerMonkey"}}