{"version":3,"sources":["webpack:///cycle_analytics.373bc6978af5e874fa91.bundle.js","webpack:////opt/gitlab/embedded/service/gitlab-rails/app/views/shared/icons/_icon_cycle_analytics_splash.svg","webpack:///../images/no_avatar.png","webpack:///cycle_analytics/components/banner.vue","webpack:///./cycle_analytics/components/banner.vue?0b9f","webpack:///./cycle_analytics/components/banner.vue","webpack:///cycle_analytics/components/limit_warning_component.vue","webpack:///./cycle_analytics/components/limit_warning_component.vue?e844","webpack:///./cycle_analytics/components/limit_warning_component.vue","webpack:///cycle_analytics/components/stage_code_component.vue","webpack:///./cycle_analytics/components/stage_code_component.vue?734f","webpack:///./cycle_analytics/components/stage_code_component.vue","webpack:///cycle_analytics/components/stage_component.vue","webpack:///./cycle_analytics/components/stage_component.vue?76d5","webpack:///./cycle_analytics/components/stage_component.vue","webpack:///cycle_analytics/components/stage_plan_component.vue","webpack:///./cycle_analytics/components/stage_plan_component.vue?749b","webpack:///./cycle_analytics/components/stage_plan_component.vue","webpack:///cycle_analytics/components/stage_review_component.vue","webpack:///./cycle_analytics/components/stage_review_component.vue?a10f","webpack:///./cycle_analytics/components/stage_review_component.vue","webpack:///cycle_analytics/components/stage_staging_component.vue","webpack:///./cycle_analytics/components/stage_staging_component.vue?0458","webpack:///./cycle_analytics/components/stage_staging_component.vue","webpack:///cycle_analytics/components/stage_test_component.vue","webpack:///./cycle_analytics/components/stage_test_component.vue?8687","webpack:///./cycle_analytics/components/stage_test_component.vue","webpack:///cycle_analytics/components/total_time_component.vue","webpack:///./cycle_analytics/components/total_time_component.vue?bc3a","webpack:///./cycle_analytics/components/total_time_component.vue","webpack:///./cycle_analytics/cycle_analytics_bundle.js","webpack:///./cycle_analytics/cycle_analytics_service.js","webpack:///./cycle_analytics/default_event_objects.js","webpack:///./cycle_analytics/cycle_analytics_store.js","webpack:///./cycle_analytics/svg/icon_branch.svg","webpack:///./cycle_analytics/svg/icon_build_status.svg","webpack:///./cycle_analytics/svg/icon_commit.svg"],"names":["webpackJsonp","../../views/shared/icons/_icon_cycle_analytics_splash.svg","module","exports","../images/no_avatar.png","./cycle_analytics/components/banner.vue","__webpack_exports__","__webpack_require__","_icon_cycle_analytics_splash","_icon_cycle_analytics_splash_default","n","banner","props","documentationLink","type","String","required","computed","iconCycleAnalyticsSplash","a","methods","dismissOverviewDialog","this","$emit","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","aria-label","__","on","click","aria-hidden","_v","domProps","innerHTML","_s","href","target","rel","staticRenderFns","esExports","components_banner","normalizeComponent","Component","./cycle_analytics/components/limit_warning_component.vue","tooltip","limit_warning_component","count","Number","directives","name","rawName","title","n__","data-placement","_e","components_limit_warning_component","./cycle_analytics/components/stage_code_component.vue","user_avatar_image","total_time_component","stage_code_component","items","Array","stage","Object","components","userAvatarImage","limitWarning","totalTime","description","length","_l","mergeRequest","img-src","author","avatarUrl","url","iid","s__","createdAt","webUrl","time","components_stage_code_component","./cycle_analytics/components/stage_component.vue","stage_component","issue","i","key","components_stage_component","./cycle_analytics/components/stage_plan_component.vue","icon_commit","icon_commit_default","stage_plan_component","iconCommit","commit","commitUrl","shortSha","components_stage_plan_component","./cycle_analytics/components/stage_review_component.vue","stage_review_component","state","toUpperCase","branch","components_stage_review_component","./cycle_analytics/components/stage_staging_component.vue","icon_branch","icon_branch_default","stage_staging_component","iconBranch","build","id","date","components_stage_staging_component","./cycle_analytics/components/stage_test_component.vue","icon_build_status","icon_build_status_default","stage_test_component","iconBuildStatus","components_stage_test_component","./cycle_analytics/components/total_time_component.vue","default","hasData","keys","days","hours","mins","seconds","components_total_time_component","./cycle_analytics/cycle_analytics_bundle.js","defineProperty","value","$","__WEBPACK_IMPORTED_MODULE_0_vue__","__WEBPACK_IMPORTED_MODULE_1_js_cookie__","__WEBPACK_IMPORTED_MODULE_1_js_cookie___default","__WEBPACK_IMPORTED_MODULE_2__flash__","__WEBPACK_IMPORTED_MODULE_3__vue_shared_translate__","__WEBPACK_IMPORTED_MODULE_4__components_banner_vue__","__WEBPACK_IMPORTED_MODULE_5__components_stage_code_component_vue__","__WEBPACK_IMPORTED_MODULE_6__components_stage_plan_component_vue__","__WEBPACK_IMPORTED_MODULE_7__components_stage_component_vue__","__WEBPACK_IMPORTED_MODULE_8__components_stage_review_component_vue__","__WEBPACK_IMPORTED_MODULE_9__components_stage_staging_component_vue__","__WEBPACK_IMPORTED_MODULE_10__components_stage_test_component_vue__","__WEBPACK_IMPORTED_MODULE_11__cycle_analytics_service__","__WEBPACK_IMPORTED_MODULE_12__cycle_analytics_store__","use","gl","cycleAnalyticsApp","el","data","cycleAnalyticsEl","document","querySelector","cycleAnalyticsService","requestPath","dataset","store","isLoading","isLoadingStage","isEmptyStage","hasError","startDate","isOverviewDialogDismissed","get","service","currentStage","currentActiveStage","stage-issue-component","stage-plan-component","stage-code-component","stage-test-component","stage-review-component","stage-staging-component","stage-production-component","created","fetchCycleAnalyticsData","handleError","setErrorState","initDropdown","_this","$dropdown","$label","find","off","e","preventDefault","$target","currentTarget","text","trim","options","_this2","fetchOptions","then","resp","json","response","setCycleAnalyticsData","selectDefaultStage","catch","stages","selectStage","_this3","isUserAllowed","setActiveStage","setStageEvents","fetchStageData","events","set","expires","call","./cycle_analytics/cycle_analytics_service.js","_classCallCheck","instance","Constructor","TypeError","__WEBPACK_IMPORTED_MODULE_1_vue_resource__","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","prototype","CycleAnalyticsService","cycleAnalytics","resource","arguments","undefined","cycle_analytics","start_date","http","params","./cycle_analytics/cycle_analytics_store.js","locale","text_utility","default_event_objects","created_at","total_time","avatar_url","web_url","plan","commit_url","short_sha","code","test","review","staging","production","EMPTY_STAGE_TEXTS","summary","stats","analytics","assign","decorateData","newData","forEach","item","stageSlug","toLowerCase","active","permissions","emptyStageText","component","slug","setLoadingState","deactivateAllStages","decorateEvents","newEvents","eventItem","push","./cycle_analytics/svg/icon_branch.svg","./cycle_analytics/svg/icon_build_status.svg","./cycle_analytics/svg/icon_commit.svg"],"mappings":"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","file":"cycle_analytics.373bc6978af5e874fa91.bundle.js","sourcesContent":["webpackJsonp([\"cycle_analytics\"],{\n\n/***/ \"../../views/shared/icons/_icon_cycle_analytics_splash.svg\":\n/***/ (function(module, exports) {\n\nmodule.exports = \"\\n\"\n\n/***/ }),\n\n/***/ \"../images/no_avatar.png\":\n/***/ (function(module, exports) {\n\nmodule.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAAAAAAdJSU2AAACNElEQVR4AdXYBa7jMBCA4b3/JZahzIkjp2qt+BWUWnG5ln2XxaJJb2b5F2ukL4wvzK/rP7bUcbf92u6oftLSe1ldk8efsfaVeEjusZZeC6e1RllaCk/yG6ag1lZ4WwPX69uyD6tAe/g2ipAlNMRS37awDLaFrpcMWxXQOi0jnWCWjFkSZomYJWDWKmatYNZyEWkJsvQimoZYah5NgdaLxagCtF6GRy0DshZPkeYwS/KIJWGWYjwYUzDLxCwDtJ54OKglimBLqHWahii2g1pmHLLGBmwVoRjcKlmgOdw65H5qKuGWCVi5Qlhs6m1sENZi4q3AWNvca5UYy2RjT/SAsiZey6CsIvc0wVlV5lJ0ibPMyLUGCmlxQq0IM0hLdWyro7CWEc3sXsqaK4O2zLxOsmtpfW5Q1u68ZrVmepaaNXEewawtI9X5Xl3U3n1qND6+rfPzvqoIWz/fklNCSLY153YV53J/XUxGCJnKZ1lajsn3/Ffegf6Y5pV2LUsSNL2UHzxUfh3TlYpZqqTpXZm0KZk9zJcqaEmaWPHDw0pxe05K7bWOLHFLWXVetqpYmrjle4+1y0aBaF4UOQ1NU+lYezJClkjLUnSEjqhH6zjAW4OjtY39Ibq+sawUb6W2RQfoqG0VeKuwrRJvlba17faRdbe2pTtYq6Nty/S7yAbGsQjWIq41wVoT1+IdZNy1djUcVdu5lklQWC0xHkt1X31qNEE1Pr3qKv/9XiSNj6Aaifj3/69+AYujsR/MvkpZAAAAAElFTkSuQmCC\"\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/banner.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: /opt/gitlab/embedded/service/gitlab-rails/app/views/shared/icons/_icon_cycle_analytics_splash.svg\nvar _icon_cycle_analytics_splash = __webpack_require__(\"../../views/shared/icons/_icon_cycle_analytics_splash.svg\");\nvar _icon_cycle_analytics_splash_default = /*#__PURE__*/__webpack_require__.n(_icon_cycle_analytics_splash);\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/banner.vue\n\n\n\n/* harmony default export */ var banner = ({\n props: {\n documentationLink: {\n type: String,\n required: true\n }\n },\n computed: {\n iconCycleAnalyticsSplash: function iconCycleAnalyticsSplash() {\n return _icon_cycle_analytics_splash_default.a;\n }\n },\n methods: {\n dismissOverviewDialog: function dismissOverviewDialog() {\n this.$emit('dismiss-overview-dialog');\n }\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-42c84366\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/banner.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"landing content-block\"},[_c('button',{staticClass:\"js-ca-dismiss-button dismiss-button\",attrs:{\"type\":\"button\",\"aria-label\":_vm.__('Dismiss Cycle Analytics introduction box')},on:{\"click\":_vm.dismissOverviewDialog}},[_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})]),_vm._v(\" \"),_c('div',{staticClass:\"svg-container\",domProps:{\"innerHTML\":_vm._s(_vm.iconCycleAnalyticsSplash)}}),_vm._v(\" \"),_c('div',{staticClass:\"inner-content\"},[_c('h4',[_vm._v(\"\\n \"+_vm._s(_vm.__('Introducing Cycle Analytics'))+\"\\n \")]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.__('Cycle Analytics gives an overview of how much time it takes to go from idea to production in your project.'))+\"\\n \")]),_vm._v(\" \"),_c('p',[_c('a',{staticClass:\"btn\",attrs:{\"href\":_vm.documentationLink,\"target\":\"_blank\",\"rel\":\"nofollow\"}},[_vm._v(\"\\n \"+_vm._s(_vm.__('Read more'))+\"\\n \")])])])])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_banner = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/banner.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n banner,\n components_banner,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_banner = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/limit_warning_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./vue_shared/directives/tooltip.js\nvar tooltip = __webpack_require__(\"./vue_shared/directives/tooltip.js\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/limit_warning_component.vue\n\n\n\n/* harmony default export */ var limit_warning_component = ({\n props: {\n count: {\n type: Number,\n required: true\n }\n },\n directives: {\n tooltip: tooltip[\"a\" /* default */]\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-1a7d2e37\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/limit_warning_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.count === 50)?_c('span',{staticClass:\"events-info pull-right\"},[_c('i',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\"}],staticClass:\"fa fa-warning\",attrs:{\"aria-hidden\":\"true\",\"title\":_vm.n__('Limited to showing %d event at most', 'Limited to showing %d events at most', 50),\"data-placement\":\"top\"}}),_vm._v(\"\\n \"+_vm._s(_vm.n__('Showing %d event', 'Showing %d events', 50))+\"\\n\")]):_vm._e()}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_limit_warning_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/limit_warning_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n limit_warning_component,\n components_limit_warning_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_limit_warning_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/stage_code_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./vue_shared/components/user_avatar/user_avatar_image.vue + 2 modules\nvar user_avatar_image = __webpack_require__(\"./vue_shared/components/user_avatar/user_avatar_image.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/limit_warning_component.vue + 2 modules\nvar limit_warning_component = __webpack_require__(\"./cycle_analytics/components/limit_warning_component.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/total_time_component.vue + 2 modules\nvar total_time_component = __webpack_require__(\"./cycle_analytics/components/total_time_component.vue\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/stage_code_component.vue\n\n\n\n\n\n/* harmony default export */ var stage_code_component = ({\n props: {\n items: Array,\n stage: Object\n },\n components: {\n userAvatarImage: user_avatar_image[\"a\" /* default */],\n limitWarning: limit_warning_component[\"a\" /* default */],\n totalTime: total_time_component[\"a\" /* default */]\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-f33d7f2a\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_code_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(mergeRequest){return _c('li',{staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":mergeRequest.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title merge-merquest-title\"},[_c('a',{attrs:{\"href\":mergeRequest.url}},[_vm._v(\"\\n \"+_vm._s(mergeRequest.title)+\"\\n \")])]),_vm._v(\" \"),_c('a',{staticClass:\"issue-link\",attrs:{\"href\":mergeRequest.url}},[_vm._v(\"!\"+_vm._s(mergeRequest.iid))]),_vm._v(\"\\n ·\\n \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('OpenedNDaysAgo|Opened'))+\"\\n \"),_c('a',{staticClass:\"issue-date\",attrs:{\"href\":mergeRequest.url}},[_vm._v(_vm._s(mergeRequest.createdAt))])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":mergeRequest.author.webUrl}},[_vm._v(_vm._s(mergeRequest.author.name))])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":mergeRequest.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_stage_code_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/stage_code_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n stage_code_component,\n components_stage_code_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_stage_code_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/stage_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./vue_shared/components/user_avatar/user_avatar_image.vue + 2 modules\nvar user_avatar_image = __webpack_require__(\"./vue_shared/components/user_avatar/user_avatar_image.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/limit_warning_component.vue + 2 modules\nvar limit_warning_component = __webpack_require__(\"./cycle_analytics/components/limit_warning_component.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/total_time_component.vue + 2 modules\nvar total_time_component = __webpack_require__(\"./cycle_analytics/components/total_time_component.vue\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/stage_component.vue\n\n\n\n\n\n/* harmony default export */ var stage_component = ({\n props: {\n items: Array,\n stage: Object\n },\n components: {\n userAvatarImage: user_avatar_image[\"a\" /* default */],\n limitWarning: limit_warning_component[\"a\" /* default */],\n totalTime: total_time_component[\"a\" /* default */]\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-3c167fc2\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(issue,i){return _c('li',{key:i,staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":issue.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title issue-title\"},[_c('a',{staticClass:\"issue-title\",attrs:{\"href\":issue.url}},[_vm._v(\"\\n \"+_vm._s(issue.title)+\"\\n \")])]),_vm._v(\" \"),_c('a',{staticClass:\"issue-link\",attrs:{\"href\":issue.url}},[_vm._v(\"#\"+_vm._s(issue.iid))]),_vm._v(\"\\n ·\\n \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('OpenedNDaysAgo|Opened'))+\"\\n \"),_c('a',{staticClass:\"issue-date\",attrs:{\"href\":issue.url}},[_vm._v(_vm._s(issue.createdAt))])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":issue.author.webUrl}},[_vm._v(\"\\n \"+_vm._s(issue.author.name)+\"\\n \")])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":issue.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_stage_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/stage_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n stage_component,\n components_stage_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_stage_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/stage_plan_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./vue_shared/components/user_avatar/user_avatar_image.vue + 2 modules\nvar user_avatar_image = __webpack_require__(\"./vue_shared/components/user_avatar/user_avatar_image.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/svg/icon_commit.svg\nvar icon_commit = __webpack_require__(\"./cycle_analytics/svg/icon_commit.svg\");\nvar icon_commit_default = /*#__PURE__*/__webpack_require__.n(icon_commit);\n\n// EXTERNAL MODULE: ./cycle_analytics/components/limit_warning_component.vue + 2 modules\nvar limit_warning_component = __webpack_require__(\"./cycle_analytics/components/limit_warning_component.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/total_time_component.vue + 2 modules\nvar total_time_component = __webpack_require__(\"./cycle_analytics/components/total_time_component.vue\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/stage_plan_component.vue\n\n\n\n\n\n\n/* harmony default export */ var stage_plan_component = ({\n props: {\n items: Array,\n stage: Object\n },\n components: {\n userAvatarImage: user_avatar_image[\"a\" /* default */],\n totalTime: total_time_component[\"a\" /* default */],\n limitWarning: limit_warning_component[\"a\" /* default */]\n },\n computed: {\n iconCommit: function iconCommit() {\n return icon_commit_default.a;\n }\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-a84d6ee6\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_plan_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(commit,i){return _c('li',{key:i,staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details item-conmmit-component\"},[_c('user-avatar-image',{attrs:{\"img-src\":commit.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title commit-title\"},[_c('a',{attrs:{\"href\":commit.commitUrl}},[_vm._v(\"\\n \"+_vm._s(commit.title)+\"\\n \")])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('FirstPushedBy|First'))+\"\\n \"),_c('span',{staticClass:\"commit-icon\",domProps:{\"innerHTML\":_vm._s(_vm.iconCommit)}}),_vm._v(\" \"),_c('a',{staticClass:\"commit-hash-link commit-sha\",attrs:{\"href\":commit.commitUrl}},[_vm._v(_vm._s(commit.shortSha))]),_vm._v(\"\\n \"+_vm._s(_vm.s__('FirstPushedBy|pushed by'))+\"\\n \"),_c('a',{staticClass:\"commit-author-link\",attrs:{\"href\":commit.author.webUrl}},[_vm._v(\"\\n \"+_vm._s(commit.author.name)+\"\\n \")])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":commit.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_stage_plan_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/stage_plan_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n stage_plan_component,\n components_stage_plan_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_stage_plan_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/stage_review_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./vue_shared/components/user_avatar/user_avatar_image.vue + 2 modules\nvar user_avatar_image = __webpack_require__(\"./vue_shared/components/user_avatar/user_avatar_image.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/limit_warning_component.vue + 2 modules\nvar limit_warning_component = __webpack_require__(\"./cycle_analytics/components/limit_warning_component.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/total_time_component.vue + 2 modules\nvar total_time_component = __webpack_require__(\"./cycle_analytics/components/total_time_component.vue\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/stage_review_component.vue\n\n\n\n\n\n/* harmony default export */ var stage_review_component = ({\n props: {\n items: Array,\n stage: Object\n },\n components: {\n userAvatarImage: user_avatar_image[\"a\" /* default */],\n totalTime: total_time_component[\"a\" /* default */],\n limitWarning: limit_warning_component[\"a\" /* default */]\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-d94b6eea\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_review_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(mergeRequest,i){return _c('li',{key:i,staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":mergeRequest.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title merge-merquest-title\"},[_c('a',{attrs:{\"href\":mergeRequest.url}},[_vm._v(\"\\n \"+_vm._s(mergeRequest.title)+\"\\n \")])]),_vm._v(\" \"),_c('a',{staticClass:\"issue-link\",attrs:{\"href\":mergeRequest.url}},[_vm._v(\"!\"+_vm._s(mergeRequest.iid))]),_vm._v(\"\\n ·\\n \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('OpenedNDaysAgo|Opened'))+\"\\n \"),_c('a',{staticClass:\"issue-date\",attrs:{\"href\":mergeRequest.url}},[_vm._v(_vm._s(mergeRequest.createdAt))])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":mergeRequest.author.webUrl}},[_vm._v(_vm._s(mergeRequest.author.name))])]),_vm._v(\" \"),(mergeRequest.state === 'closed')?[_c('span',{staticClass:\"merge-request-state\"},[_c('i',{staticClass:\"fa fa-ban\"}),_vm._v(\"\\n \"+_vm._s(mergeRequest.state.toUpperCase())+\"\\n \")])]:[(mergeRequest.branch)?_c('span',{staticClass:\"merge-request-branch\"},[_c('i',{staticClass:\"fa fa-code-fork\"}),_vm._v(\" \"),_c('a',{attrs:{\"href\":mergeRequest.branch.url}},[_vm._v(_vm._s(mergeRequest.branch.name))])]):_vm._e()]],2),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":mergeRequest.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_stage_review_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/stage_review_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n stage_review_component,\n components_stage_review_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_stage_review_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/stage_staging_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./vue_shared/components/user_avatar/user_avatar_image.vue + 2 modules\nvar user_avatar_image = __webpack_require__(\"./vue_shared/components/user_avatar/user_avatar_image.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/svg/icon_branch.svg\nvar icon_branch = __webpack_require__(\"./cycle_analytics/svg/icon_branch.svg\");\nvar icon_branch_default = /*#__PURE__*/__webpack_require__.n(icon_branch);\n\n// EXTERNAL MODULE: ./cycle_analytics/components/limit_warning_component.vue + 2 modules\nvar limit_warning_component = __webpack_require__(\"./cycle_analytics/components/limit_warning_component.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/total_time_component.vue + 2 modules\nvar total_time_component = __webpack_require__(\"./cycle_analytics/components/total_time_component.vue\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/stage_staging_component.vue\n\n\n\n\n\n\n/* harmony default export */ var stage_staging_component = ({\n props: {\n items: Array,\n stage: Object\n },\n components: {\n userAvatarImage: user_avatar_image[\"a\" /* default */],\n totalTime: total_time_component[\"a\" /* default */],\n limitWarning: limit_warning_component[\"a\" /* default */]\n },\n computed: {\n iconBranch: function iconBranch() {\n return icon_branch_default.a;\n }\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-025dfd26\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_staging_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(build,i){return _c('li',{key:i,staticClass:\"stage-event-item item-build-component\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":build.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title\"},[_c('a',{staticClass:\"pipeline-id\",attrs:{\"href\":build.url}},[_vm._v(\"#\"+_vm._s(build.id))]),_vm._v(\" \"),_c('i',{staticClass:\"fa fa-code-fork\"}),_vm._v(\" \"),_c('a',{staticClass:\"ref-name\",attrs:{\"href\":build.branch.url}},[_vm._v(_vm._s(build.branch.name))]),_vm._v(\" \"),_c('span',{staticClass:\"icon-branch\",domProps:{\"innerHTML\":_vm._s(_vm.iconBranch)}}),_vm._v(\" \"),_c('a',{staticClass:\"commit-sha\",attrs:{\"href\":build.commitUrl}},[_vm._v(_vm._s(build.shortSha))])]),_vm._v(\" \"),_c('span',[_c('a',{staticClass:\"build-date\",attrs:{\"href\":build.url}},[_vm._v(_vm._s(build.date))]),_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":build.author.webUrl}},[_vm._v(\"\\n \"+_vm._s(build.author.name)+\"\\n \")])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":build.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_stage_staging_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/stage_staging_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n stage_staging_component,\n components_stage_staging_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_stage_staging_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/stage_test_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./cycle_analytics/svg/icon_build_status.svg\nvar icon_build_status = __webpack_require__(\"./cycle_analytics/svg/icon_build_status.svg\");\nvar icon_build_status_default = /*#__PURE__*/__webpack_require__.n(icon_build_status);\n\n// EXTERNAL MODULE: ./cycle_analytics/svg/icon_branch.svg\nvar icon_branch = __webpack_require__(\"./cycle_analytics/svg/icon_branch.svg\");\nvar icon_branch_default = /*#__PURE__*/__webpack_require__.n(icon_branch);\n\n// EXTERNAL MODULE: ./cycle_analytics/components/limit_warning_component.vue + 2 modules\nvar limit_warning_component = __webpack_require__(\"./cycle_analytics/components/limit_warning_component.vue\");\n\n// EXTERNAL MODULE: ./cycle_analytics/components/total_time_component.vue + 2 modules\nvar total_time_component = __webpack_require__(\"./cycle_analytics/components/total_time_component.vue\");\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/stage_test_component.vue\n\n\n\n\n\n\n/* harmony default export */ var stage_test_component = ({\n props: {\n items: Array,\n stage: Object\n },\n components: {\n totalTime: total_time_component[\"a\" /* default */],\n limitWarning: limit_warning_component[\"a\" /* default */]\n },\n computed: {\n iconBuildStatus: function iconBuildStatus() {\n return icon_build_status_default.a;\n },\n iconBranch: function iconBranch() {\n return icon_branch_default.a;\n }\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-2a1d55c1\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_test_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(build,i){return _c('li',{key:i,staticClass:\"stage-event-item item-build-component\"},[_c('div',{staticClass:\"item-details\"},[_c('h5',{staticClass:\"item-title\"},[_c('span',{staticClass:\"icon-build-status\",domProps:{\"innerHTML\":_vm._s(_vm.iconBuildStatus)}}),_vm._v(\" \"),_c('a',{staticClass:\"item-build-name\",attrs:{\"href\":build.url}},[_vm._v(_vm._s(build.name))]),_vm._v(\"\\n ·\\n \"),_c('a',{staticClass:\"pipeline-id\",attrs:{\"href\":build.url}},[_vm._v(\"#\"+_vm._s(build.id))]),_vm._v(\" \"),_c('i',{staticClass:\"fa fa-code-fork\"}),_vm._v(\" \"),_c('a',{staticClass:\"ref-name\",attrs:{\"href\":build.branch.url}},[_vm._v(_vm._s(build.branch.name))]),_vm._v(\" \"),_c('span',{staticClass:\"icon-branch\",domProps:{\"innerHTML\":_vm._s(_vm.iconBranch)}}),_vm._v(\" \"),_c('a',{staticClass:\"commit-sha\",attrs:{\"href\":build.commitUrl}},[_vm._v(_vm._s(build.shortSha))])]),_vm._v(\" \"),_c('span',[_c('a',{staticClass:\"issue-date\",attrs:{\"href\":build.url}},[_vm._v(\"\\n \"+_vm._s(build.date)+\"\\n \")])])]),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":build.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_stage_test_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/stage_test_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n stage_test_component,\n components_stage_test_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_stage_test_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/components/total_time_component.vue\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/babel-loader/lib!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=script&index=0!./cycle_analytics/components/total_time_component.vue\n\n/* harmony default export */ var total_time_component = ({\n props: {\n time: {\n type: Object,\n required: false,\n default: function _default() {\n return {};\n }\n }\n },\n computed: {\n hasData: function hasData() {\n return Object.keys(this.time).length;\n }\n }\n});\n// CONCATENATED MODULE: /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-8ba71742\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/total_time_component.vue\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"total-time\"},[(_vm.hasData)?[(_vm.time.days)?[_vm._v(_vm._s(_vm.time.days)+\" \"),_c('span',[_vm._v(_vm._s(_vm.n__('day', 'days', _vm.time.days)))])]:_vm._e(),_vm._v(\" \"),(_vm.time.hours)?[_vm._v(_vm._s(_vm.time.hours)+\" \"),_c('span',[_vm._v(_vm._s(_vm.n__('Time|hr', 'Time|hrs', _vm.time.hours)))])]:_vm._e(),_vm._v(\" \"),(_vm.time.mins && !_vm.time.days)?[_vm._v(_vm._s(_vm.time.mins)+\" \"),_c('span',[_vm._v(_vm._s(_vm.n__('Time|min', 'Time|mins', _vm.time.mins)))])]:_vm._e(),_vm._v(\" \"),(_vm.time.seconds && _vm.hasData === 1 || _vm.time.seconds === 0)?[_vm._v(_vm._s(_vm.time.seconds)+\" \"),_c('span',[_vm._v(_vm._s(_vm.s__('Time|s')))])]:_vm._e()]:[_vm._v(\"\\n --\\n \")]],2)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\n/* harmony default export */ var components_total_time_component = (esExports);\n// CONCATENATED MODULE: ./cycle_analytics/components/total_time_component.vue\nvar normalizeComponent = __webpack_require__(\"../../../node_modules/vue-loader/lib/component-normalizer.js\")\n/* script */\n\n/* template */\n\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n total_time_component,\n components_total_time_component,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\n/* harmony default export */ var cycle_analytics_components_total_time_component = __webpack_exports__[\"a\"] = (Component.exports);\n\n\n/***/ }),\n\n/***/ \"./cycle_analytics/cycle_analytics_bundle.js\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* WEBPACK VAR INJECTION */(function($) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(\"../../../node_modules/vue/dist/vue.esm.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_js_cookie__ = __webpack_require__(\"../../../node_modules/js-cookie/src/js.cookie.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_js_cookie___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_js_cookie__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__flash__ = __webpack_require__(\"./flash.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__vue_shared_translate__ = __webpack_require__(\"./vue_shared/translate.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__components_banner_vue__ = __webpack_require__(\"./cycle_analytics/components/banner.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__components_stage_code_component_vue__ = __webpack_require__(\"./cycle_analytics/components/stage_code_component.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_stage_plan_component_vue__ = __webpack_require__(\"./cycle_analytics/components/stage_plan_component.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__components_stage_component_vue__ = __webpack_require__(\"./cycle_analytics/components/stage_component.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__components_stage_review_component_vue__ = __webpack_require__(\"./cycle_analytics/components/stage_review_component.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__components_stage_staging_component_vue__ = __webpack_require__(\"./cycle_analytics/components/stage_staging_component.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__components_stage_test_component_vue__ = __webpack_require__(\"./cycle_analytics/components/stage_test_component.vue\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__cycle_analytics_service__ = __webpack_require__(\"./cycle_analytics/cycle_analytics_service.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__cycle_analytics_store__ = __webpack_require__(\"./cycle_analytics/cycle_analytics_store.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_3__vue_shared_translate__[\"a\" /* default */]);\n\n$(function () {\n var OVERVIEW_DIALOG_COOKIE = 'cycle_analytics_help_dismissed';\n\n gl.cycleAnalyticsApp = new __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */]({\n el: '#cycle-analytics',\n name: 'CycleAnalytics',\n data: function data() {\n var cycleAnalyticsEl = document.querySelector('#cycle-analytics');\n var cycleAnalyticsService = new __WEBPACK_IMPORTED_MODULE_11__cycle_analytics_service__[\"a\" /* default */]({\n requestPath: cycleAnalyticsEl.dataset.requestPath\n });\n\n return {\n store: __WEBPACK_IMPORTED_MODULE_12__cycle_analytics_store__[\"a\" /* default */],\n state: __WEBPACK_IMPORTED_MODULE_12__cycle_analytics_store__[\"a\" /* default */].state,\n isLoading: false,\n isLoadingStage: false,\n isEmptyStage: false,\n hasError: false,\n startDate: 30,\n isOverviewDialogDismissed: __WEBPACK_IMPORTED_MODULE_1_js_cookie___default.a.get(OVERVIEW_DIALOG_COOKIE),\n service: cycleAnalyticsService\n };\n },\n\n computed: {\n currentStage: function currentStage() {\n return this.store.currentActiveStage();\n }\n },\n components: {\n banner: __WEBPACK_IMPORTED_MODULE_4__components_banner_vue__[\"a\" /* default */],\n 'stage-issue-component': __WEBPACK_IMPORTED_MODULE_7__components_stage_component_vue__[\"a\" /* default */],\n 'stage-plan-component': __WEBPACK_IMPORTED_MODULE_6__components_stage_plan_component_vue__[\"a\" /* default */],\n 'stage-code-component': __WEBPACK_IMPORTED_MODULE_5__components_stage_code_component_vue__[\"a\" /* default */],\n 'stage-test-component': __WEBPACK_IMPORTED_MODULE_10__components_stage_test_component_vue__[\"a\" /* default */],\n 'stage-review-component': __WEBPACK_IMPORTED_MODULE_8__components_stage_review_component_vue__[\"a\" /* default */],\n 'stage-staging-component': __WEBPACK_IMPORTED_MODULE_9__components_stage_staging_component_vue__[\"a\" /* default */],\n 'stage-production-component': __WEBPACK_IMPORTED_MODULE_7__components_stage_component_vue__[\"a\" /* default */]\n },\n created: function created() {\n this.fetchCycleAnalyticsData();\n },\n\n methods: {\n handleError: function handleError() {\n this.store.setErrorState(true);\n return new __WEBPACK_IMPORTED_MODULE_2__flash__[\"a\" /* default */]('There was an error while fetching cycle analytics data.');\n },\n initDropdown: function initDropdown() {\n var _this = this;\n\n var $dropdown = $('.js-ca-dropdown');\n var $label = $dropdown.find('.dropdown-label');\n\n $dropdown.find('li a').off('click').on('click', function (e) {\n e.preventDefault();\n var $target = $(e.currentTarget);\n _this.startDate = $target.data('value');\n\n $label.text($target.text().trim());\n _this.fetchCycleAnalyticsData({ startDate: _this.startDate });\n });\n },\n fetchCycleAnalyticsData: function fetchCycleAnalyticsData(options) {\n var _this2 = this;\n\n var fetchOptions = options || { startDate: this.startDate };\n\n this.isLoading = true;\n\n this.service.fetchCycleAnalyticsData(fetchOptions).then(function (resp) {\n return resp.json();\n }).then(function (response) {\n _this2.store.setCycleAnalyticsData(response);\n _this2.selectDefaultStage();\n _this2.initDropdown();\n _this2.isLoading = false;\n }).catch(function () {\n _this2.handleError();\n _this2.isLoading = false;\n });\n },\n selectDefaultStage: function selectDefaultStage() {\n var stage = this.state.stages[0];\n this.selectStage(stage);\n },\n selectStage: function selectStage(stage) {\n var _this3 = this;\n\n if (this.isLoadingStage) return;\n if (this.currentStage === stage) return;\n\n if (!stage.isUserAllowed) {\n this.store.setActiveStage(stage);\n return;\n }\n\n this.isLoadingStage = true;\n this.store.setStageEvents([], stage);\n this.store.setActiveStage(stage);\n\n this.service.fetchStageData({\n stage: stage,\n startDate: this.startDate\n }).then(function (resp) {\n return resp.json();\n }).then(function (response) {\n _this3.isEmptyStage = !response.events.length;\n _this3.store.setStageEvents(response.events, stage);\n _this3.isLoadingStage = false;\n }).catch(function () {\n _this3.isEmptyStage = true;\n _this3.isLoadingStage = false;\n });\n },\n dismissOverviewDialog: function dismissOverviewDialog() {\n this.isOverviewDialogDismissed = true;\n __WEBPACK_IMPORTED_MODULE_1_js_cookie___default.a.set(OVERVIEW_DIALOG_COOKIE, '1', { expires: 365 });\n }\n }\n });\n});\n/* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(\"../../../node_modules/jquery/dist/jquery.js\")))\n\n/***/ }),\n\n/***/ \"./cycle_analytics/cycle_analytics_service.js\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(\"../../../node_modules/vue/dist/vue.esm.js\");\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_vue_resource__ = __webpack_require__(\"../../../node_modules/vue-resource/dist/vue-resource.es2015.js\");\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].use(__WEBPACK_IMPORTED_MODULE_1_vue_resource__[\"a\" /* default */]);\n\nvar CycleAnalyticsService = function () {\n function CycleAnalyticsService(options) {\n _classCallCheck(this, CycleAnalyticsService);\n\n this.requestPath = options.requestPath;\n this.cycleAnalytics = __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].resource(this.requestPath);\n }\n\n _createClass(CycleAnalyticsService, [{\n key: 'fetchCycleAnalyticsData',\n value: function fetchCycleAnalyticsData() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { startDate: 30 };\n\n return this.cycleAnalytics.get({ cycle_analytics: { start_date: options.startDate } });\n }\n }, {\n key: 'fetchStageData',\n value: function fetchStageData(options) {\n var stage = options.stage,\n startDate = options.startDate;\n\n\n return __WEBPACK_IMPORTED_MODULE_0_vue__[\"a\" /* default */].http.get(this.requestPath + '/events/' + stage.name + '.json', {\n params: {\n cycle_analytics: {\n start_date: startDate\n }\n }\n });\n }\n }]);\n\n return CycleAnalyticsService;\n}();\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (CycleAnalyticsService);\n\n/***/ }),\n\n/***/ \"./cycle_analytics/cycle_analytics_store.js\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXTERNAL MODULE: ./locale/index.js + 1 modules\nvar locale = __webpack_require__(\"./locale/index.js\");\n\n// EXTERNAL MODULE: ./lib/utils/text_utility.js\nvar text_utility = __webpack_require__(\"./lib/utils/text_utility.js\");\n\n// CONCATENATED MODULE: ./cycle_analytics/default_event_objects.js\n/* harmony default export */ var default_event_objects = ({\n issue: {\n created_at: '',\n url: '',\n iid: '',\n title: '',\n total_time: {},\n author: {\n avatar_url: '',\n id: '',\n name: '',\n web_url: ''\n }\n },\n plan: {\n title: '',\n commit_url: '',\n short_sha: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: ''\n }\n },\n code: {\n title: '',\n iid: '',\n created_at: '',\n url: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: ''\n }\n },\n test: {\n name: '',\n id: '',\n date: '',\n url: '',\n short_sha: '',\n commit_url: '',\n total_time: {},\n branch: {\n name: '',\n url: ''\n }\n },\n review: {\n title: '',\n iid: '',\n created_at: '',\n url: '',\n state: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: ''\n }\n },\n staging: {\n id: '',\n short_sha: '',\n date: '',\n url: '',\n commit_url: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: ''\n },\n branch: {\n name: '',\n url: ''\n }\n },\n production: {\n title: '',\n created_at: '',\n url: '',\n iid: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: ''\n }\n }\n});\n// CONCATENATED MODULE: ./cycle_analytics/cycle_analytics_store.js\n/* eslint-disable no-param-reassign */\n\n\n\n\n\nvar EMPTY_STAGE_TEXTS = {\n issue: Object(locale[\"__\"])('The issue stage shows the time it takes from creating an issue to assigning the issue to a milestone, or add the issue to a list on your Issue Board. Begin creating issues to see data for this stage.'),\n plan: Object(locale[\"__\"])('The planning stage shows the time from the previous step to pushing your first commit. This time will be added automatically once you push your first commit.'),\n code: Object(locale[\"__\"])('The coding stage shows the time from the first commit to creating the merge request. The data will automatically be added here once you create your first merge request.'),\n test: Object(locale[\"__\"])('The testing stage shows the time GitLab CI takes to run every pipeline for the related merge request. The data will automatically be added after your first pipeline finishes running.'),\n review: Object(locale[\"__\"])('The review stage shows the time from creating the merge request to merging it. The data will automatically be added after you merge your first merge request.'),\n staging: Object(locale[\"__\"])('The staging stage shows the time between merging the MR and deploying code to the production environment. The data will be automatically added once you deploy to production for the first time.'),\n production: Object(locale[\"__\"])('The production stage shows the total time it takes between creating an issue and deploying the code to production. The data will be automatically added once you have completed the full idea to production cycle.')\n};\n\n/* harmony default export */ var cycle_analytics_store = __webpack_exports__[\"a\"] = ({\n state: {\n summary: '',\n stats: '',\n analytics: '',\n events: [],\n stages: []\n },\n setCycleAnalyticsData: function setCycleAnalyticsData(data) {\n this.state = Object.assign(this.state, this.decorateData(data));\n },\n decorateData: function decorateData(data) {\n var newData = {};\n\n newData.stages = data.stats || [];\n newData.summary = data.summary || [];\n\n newData.summary.forEach(function (item) {\n item.value = item.value || '-';\n });\n\n newData.stages.forEach(function (item) {\n var stageSlug = Object(text_utility[\"b\" /* dasherize */])(item.name.toLowerCase());\n item.active = false;\n item.isUserAllowed = data.permissions[stageSlug];\n item.emptyStageText = EMPTY_STAGE_TEXTS[stageSlug];\n item.component = 'stage-' + stageSlug + '-component';\n item.slug = stageSlug;\n });\n newData.analytics = data;\n return newData;\n },\n setLoadingState: function setLoadingState(state) {\n this.state.isLoading = state;\n },\n setErrorState: function setErrorState(state) {\n this.state.hasError = state;\n },\n deactivateAllStages: function deactivateAllStages() {\n this.state.stages.forEach(function (stage) {\n stage.active = false;\n });\n },\n setActiveStage: function setActiveStage(stage) {\n this.deactivateAllStages();\n stage.active = true;\n },\n setStageEvents: function setStageEvents(events, stage) {\n this.state.events = this.decorateEvents(events, stage);\n },\n decorateEvents: function decorateEvents(events, stage) {\n var newEvents = [];\n\n events.forEach(function (item) {\n if (!item) return;\n\n var eventItem = Object.assign({}, default_event_objects[stage.slug], item);\n\n eventItem.totalTime = eventItem.total_time;\n\n if (eventItem.author) {\n eventItem.author.webUrl = eventItem.author.web_url;\n eventItem.author.avatarUrl = eventItem.author.avatar_url;\n }\n\n if (eventItem.created_at) eventItem.createdAt = eventItem.created_at;\n if (eventItem.short_sha) eventItem.shortSha = eventItem.short_sha;\n if (eventItem.commit_url) eventItem.commitUrl = eventItem.commit_url;\n\n delete eventItem.author.web_url;\n delete eventItem.author.avatar_url;\n delete eventItem.total_time;\n delete eventItem.created_at;\n delete eventItem.short_sha;\n delete eventItem.commit_url;\n\n newEvents.push(eventItem);\n });\n\n return newEvents;\n },\n currentActiveStage: function currentActiveStage() {\n return this.state.stages.find(function (stage) {\n return stage.active;\n });\n }\n});\n\n/***/ }),\n\n/***/ \"./cycle_analytics/svg/icon_branch.svg\":\n/***/ (function(module, exports) {\n\nmodule.exports = \"\\n\"\n\n/***/ }),\n\n/***/ \"./cycle_analytics/svg/icon_build_status.svg\":\n/***/ (function(module, exports) {\n\nmodule.exports = \"\\n\"\n\n/***/ }),\n\n/***/ \"./cycle_analytics/svg/icon_commit.svg\":\n/***/ (function(module, exports) {\n\nmodule.exports = \"\\n\"\n\n/***/ })\n\n},[\"./cycle_analytics/cycle_analytics_bundle.js\"]);\n\n\n// WEBPACK FOOTER //\n// cycle_analytics.373bc6978af5e874fa91.bundle.js","module.exports = \"\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/app/views/shared/icons/_icon_cycle_analytics_splash.svg\n// module id = ../../views/shared/icons/_icon_cycle_analytics_splash.svg\n// module chunks = cycle_analytics","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEsAAABLCAAAAAAdJSU2AAACNElEQVR4AdXYBa7jMBCA4b3/JZahzIkjp2qt+BWUWnG5ln2XxaJJb2b5F2ukL4wvzK/rP7bUcbf92u6oftLSe1ldk8efsfaVeEjusZZeC6e1RllaCk/yG6ag1lZ4WwPX69uyD6tAe/g2ipAlNMRS37awDLaFrpcMWxXQOi0jnWCWjFkSZomYJWDWKmatYNZyEWkJsvQimoZYah5NgdaLxagCtF6GRy0DshZPkeYwS/KIJWGWYjwYUzDLxCwDtJ54OKglimBLqHWahii2g1pmHLLGBmwVoRjcKlmgOdw65H5qKuGWCVi5Qlhs6m1sENZi4q3AWNvca5UYy2RjT/SAsiZey6CsIvc0wVlV5lJ0ibPMyLUGCmlxQq0IM0hLdWyro7CWEc3sXsqaK4O2zLxOsmtpfW5Q1u68ZrVmepaaNXEewawtI9X5Xl3U3n1qND6+rfPzvqoIWz/fklNCSLY153YV53J/XUxGCJnKZ1lajsn3/Ffegf6Y5pV2LUsSNL2UHzxUfh3TlYpZqqTpXZm0KZk9zJcqaEmaWPHDw0pxe05K7bWOLHFLWXVetqpYmrjle4+1y0aBaF4UOQ1NU+lYezJClkjLUnSEjqhH6zjAW4OjtY39Ibq+sawUb6W2RQfoqG0VeKuwrRJvlba17faRdbe2pTtYq6Nty/S7yAbGsQjWIq41wVoT1+IdZNy1djUcVdu5lklQWC0xHkt1X31qNEE1Pr3qKv/9XiSNj6Aaifj3/69+AYujsR/MvkpZAAAAAElFTkSuQmCC\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ../images/no_avatar.png\n// module id = ../images/no_avatar.png\n// module chunks = boards sidebar commit_pipelines diff_notes environments cycle_analytics job_details notes pipelines pipelines_details environments_folder","\n\n \n \n \n \n \n \n \n \n \n {{__('Introducing Cycle Analytics')}}\n \n \n {{ __('Cycle Analytics gives an overview of how much time it takes to go from idea to production in your project.') }}\n \n \n \n {{__('Read more')}}\n \n \n \n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/banner.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"landing content-block\"},[_c('button',{staticClass:\"js-ca-dismiss-button dismiss-button\",attrs:{\"type\":\"button\",\"aria-label\":_vm.__('Dismiss Cycle Analytics introduction box')},on:{\"click\":_vm.dismissOverviewDialog}},[_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})]),_vm._v(\" \"),_c('div',{staticClass:\"svg-container\",domProps:{\"innerHTML\":_vm._s(_vm.iconCycleAnalyticsSplash)}}),_vm._v(\" \"),_c('div',{staticClass:\"inner-content\"},[_c('h4',[_vm._v(\"\\n \"+_vm._s(_vm.__('Introducing Cycle Analytics'))+\"\\n \")]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.__('Cycle Analytics gives an overview of how much time it takes to go from idea to production in your project.'))+\"\\n \")]),_vm._v(\" \"),_c('p',[_c('a',{staticClass:\"btn\",attrs:{\"href\":_vm.documentationLink,\"target\":\"_blank\",\"rel\":\"nofollow\"}},[_vm._v(\"\\n \"+_vm._s(_vm.__('Read more'))+\"\\n \")])])])])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-42c84366\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/banner.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./banner.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-42c84366\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./banner.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/banner.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ n__('Showing %d event', 'Showing %d events', 50) }}\n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/limit_warning_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.count === 50)?_c('span',{staticClass:\"events-info pull-right\"},[_c('i',{directives:[{name:\"tooltip\",rawName:\"v-tooltip\"}],staticClass:\"fa fa-warning\",attrs:{\"aria-hidden\":\"true\",\"title\":_vm.n__('Limited to showing %d event at most', 'Limited to showing %d events at most', 50),\"data-placement\":\"top\"}}),_vm._v(\"\\n \"+_vm._s(_vm.n__('Showing %d event', 'Showing %d events', 50))+\"\\n\")]):_vm._e()}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-1a7d2e37\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/limit_warning_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./limit_warning_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-1a7d2e37\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./limit_warning_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/limit_warning_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ stage.description }}\n \n \n \n \n \n \n \n \n \n {{ mergeRequest.title }}\n \n \n !{{ mergeRequest.iid }}\n ·\n \n {{ s__('OpenedNDaysAgo|Opened') }}\n {{ mergeRequest.createdAt }}\n \n \n {{ s__('ByAuthor|by') }}\n {{ mergeRequest.author.name }}\n \n \n \n \n \n \n \n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/stage_code_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(mergeRequest){return _c('li',{staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":mergeRequest.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title merge-merquest-title\"},[_c('a',{attrs:{\"href\":mergeRequest.url}},[_vm._v(\"\\n \"+_vm._s(mergeRequest.title)+\"\\n \")])]),_vm._v(\" \"),_c('a',{staticClass:\"issue-link\",attrs:{\"href\":mergeRequest.url}},[_vm._v(\"!\"+_vm._s(mergeRequest.iid))]),_vm._v(\"\\n ·\\n \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('OpenedNDaysAgo|Opened'))+\"\\n \"),_c('a',{staticClass:\"issue-date\",attrs:{\"href\":mergeRequest.url}},[_vm._v(_vm._s(mergeRequest.createdAt))])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":mergeRequest.author.webUrl}},[_vm._v(_vm._s(mergeRequest.author.name))])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":mergeRequest.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-f33d7f2a\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_code_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./stage_code_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-f33d7f2a\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./stage_code_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/stage_code_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ stage.description }}\n \n \n \n \n \n \n \n \n \n {{ issue.title }}\n \n \n #{{ issue.iid }}\n ·\n \n {{ s__('OpenedNDaysAgo|Opened') }}\n {{ issue.createdAt }}\n \n \n {{ s__('ByAuthor|by') }}\n \n {{ issue.author.name }}\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/stage_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(issue,i){return _c('li',{key:i,staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":issue.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title issue-title\"},[_c('a',{staticClass:\"issue-title\",attrs:{\"href\":issue.url}},[_vm._v(\"\\n \"+_vm._s(issue.title)+\"\\n \")])]),_vm._v(\" \"),_c('a',{staticClass:\"issue-link\",attrs:{\"href\":issue.url}},[_vm._v(\"#\"+_vm._s(issue.iid))]),_vm._v(\"\\n ·\\n \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('OpenedNDaysAgo|Opened'))+\"\\n \"),_c('a',{staticClass:\"issue-date\",attrs:{\"href\":issue.url}},[_vm._v(_vm._s(issue.createdAt))])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":issue.author.webUrl}},[_vm._v(\"\\n \"+_vm._s(issue.author.name)+\"\\n \")])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":issue.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-3c167fc2\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./stage_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3c167fc2\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./stage_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/stage_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ stage.description }}\n \n \n \n \n \n \n \n \n \n {{ commit.title }}\n \n \n \n {{ s__('FirstPushedBy|First') }}\n \n {{ commit.shortSha }}\n {{ s__('FirstPushedBy|pushed by') }}\n \n {{ commit.author.name }}\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/stage_plan_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(commit,i){return _c('li',{key:i,staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details item-conmmit-component\"},[_c('user-avatar-image',{attrs:{\"img-src\":commit.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title commit-title\"},[_c('a',{attrs:{\"href\":commit.commitUrl}},[_vm._v(\"\\n \"+_vm._s(commit.title)+\"\\n \")])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('FirstPushedBy|First'))+\"\\n \"),_c('span',{staticClass:\"commit-icon\",domProps:{\"innerHTML\":_vm._s(_vm.iconCommit)}}),_vm._v(\" \"),_c('a',{staticClass:\"commit-hash-link commit-sha\",attrs:{\"href\":commit.commitUrl}},[_vm._v(_vm._s(commit.shortSha))]),_vm._v(\"\\n \"+_vm._s(_vm.s__('FirstPushedBy|pushed by'))+\"\\n \"),_c('a',{staticClass:\"commit-author-link\",attrs:{\"href\":commit.author.webUrl}},[_vm._v(\"\\n \"+_vm._s(commit.author.name)+\"\\n \")])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":commit.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-a84d6ee6\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_plan_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./stage_plan_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-a84d6ee6\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./stage_plan_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/stage_plan_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ stage.description }}\n \n \n \n \n \n \n \n \n \n {{ mergeRequest.title }}\n \n \n !{{ mergeRequest.iid }}\n ·\n \n {{ s__('OpenedNDaysAgo|Opened') }}\n {{ mergeRequest.createdAt }}\n \n \n {{ s__('ByAuthor|by') }}\n {{ mergeRequest.author.name }}\n \n \n \n \n {{ mergeRequest.state.toUpperCase() }}\n \n \n \n \n \n {{ mergeRequest.branch.name }}\n \n \n \n \n \n \n \n \n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/stage_review_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(mergeRequest,i){return _c('li',{key:i,staticClass:\"stage-event-item\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":mergeRequest.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title merge-merquest-title\"},[_c('a',{attrs:{\"href\":mergeRequest.url}},[_vm._v(\"\\n \"+_vm._s(mergeRequest.title)+\"\\n \")])]),_vm._v(\" \"),_c('a',{staticClass:\"issue-link\",attrs:{\"href\":mergeRequest.url}},[_vm._v(\"!\"+_vm._s(mergeRequest.iid))]),_vm._v(\"\\n ·\\n \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('OpenedNDaysAgo|Opened'))+\"\\n \"),_c('a',{staticClass:\"issue-date\",attrs:{\"href\":mergeRequest.url}},[_vm._v(_vm._s(mergeRequest.createdAt))])]),_vm._v(\" \"),_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":mergeRequest.author.webUrl}},[_vm._v(_vm._s(mergeRequest.author.name))])]),_vm._v(\" \"),(mergeRequest.state === 'closed')?[_c('span',{staticClass:\"merge-request-state\"},[_c('i',{staticClass:\"fa fa-ban\"}),_vm._v(\"\\n \"+_vm._s(mergeRequest.state.toUpperCase())+\"\\n \")])]:[(mergeRequest.branch)?_c('span',{staticClass:\"merge-request-branch\"},[_c('i',{staticClass:\"fa fa-code-fork\"}),_vm._v(\" \"),_c('a',{attrs:{\"href\":mergeRequest.branch.url}},[_vm._v(_vm._s(mergeRequest.branch.name))])]):_vm._e()]],2),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":mergeRequest.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-d94b6eea\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_review_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./stage_review_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-d94b6eea\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./stage_review_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/stage_review_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ stage.description }}\n \n \n \n \n \n \n \n \n #{{ build.id }}\n \n {{ build.branch.name }}\n \n {{ build.shortSha }}\n \n \n {{ build.date }}\n {{ s__('ByAuthor|by') }}\n \n {{ build.author.name }}\n \n \n \n \n \n \n \n \n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/stage_staging_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(build,i){return _c('li',{key:i,staticClass:\"stage-event-item item-build-component\"},[_c('div',{staticClass:\"item-details\"},[_c('user-avatar-image',{attrs:{\"img-src\":build.author.avatarUrl}}),_vm._v(\" \"),_c('h5',{staticClass:\"item-title\"},[_c('a',{staticClass:\"pipeline-id\",attrs:{\"href\":build.url}},[_vm._v(\"#\"+_vm._s(build.id))]),_vm._v(\" \"),_c('i',{staticClass:\"fa fa-code-fork\"}),_vm._v(\" \"),_c('a',{staticClass:\"ref-name\",attrs:{\"href\":build.branch.url}},[_vm._v(_vm._s(build.branch.name))]),_vm._v(\" \"),_c('span',{staticClass:\"icon-branch\",domProps:{\"innerHTML\":_vm._s(_vm.iconBranch)}}),_vm._v(\" \"),_c('a',{staticClass:\"commit-sha\",attrs:{\"href\":build.commitUrl}},[_vm._v(_vm._s(build.shortSha))])]),_vm._v(\" \"),_c('span',[_c('a',{staticClass:\"build-date\",attrs:{\"href\":build.url}},[_vm._v(_vm._s(build.date))]),_vm._v(\"\\n \"+_vm._s(_vm.s__('ByAuthor|by'))+\"\\n \"),_c('a',{staticClass:\"issue-author-link\",attrs:{\"href\":build.author.webUrl}},[_vm._v(\"\\n \"+_vm._s(build.author.name)+\"\\n \")])])],1),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":build.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-025dfd26\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_staging_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./stage_staging_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-025dfd26\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./stage_staging_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/stage_staging_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ stage.description }}\n \n \n \n \n \n \n \n {{ build.name }}\n ·\n #{{ build.id }}\n \n {{ build.branch.name }}\n \n {{ build.shortSha }}\n \n \n \n {{ build.date }}\n \n \n \n \n \n \n \n \n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/stage_test_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"events-description\"},[_vm._v(\"\\n \"+_vm._s(_vm.stage.description)+\"\\n \"),_c('limit-warning',{attrs:{\"count\":_vm.items.length}})],1),_vm._v(\" \"),_c('ul',{staticClass:\"stage-event-list\"},_vm._l((_vm.items),function(build,i){return _c('li',{key:i,staticClass:\"stage-event-item item-build-component\"},[_c('div',{staticClass:\"item-details\"},[_c('h5',{staticClass:\"item-title\"},[_c('span',{staticClass:\"icon-build-status\",domProps:{\"innerHTML\":_vm._s(_vm.iconBuildStatus)}}),_vm._v(\" \"),_c('a',{staticClass:\"item-build-name\",attrs:{\"href\":build.url}},[_vm._v(_vm._s(build.name))]),_vm._v(\"\\n ·\\n \"),_c('a',{staticClass:\"pipeline-id\",attrs:{\"href\":build.url}},[_vm._v(\"#\"+_vm._s(build.id))]),_vm._v(\" \"),_c('i',{staticClass:\"fa fa-code-fork\"}),_vm._v(\" \"),_c('a',{staticClass:\"ref-name\",attrs:{\"href\":build.branch.url}},[_vm._v(_vm._s(build.branch.name))]),_vm._v(\" \"),_c('span',{staticClass:\"icon-branch\",domProps:{\"innerHTML\":_vm._s(_vm.iconBranch)}}),_vm._v(\" \"),_c('a',{staticClass:\"commit-sha\",attrs:{\"href\":build.commitUrl}},[_vm._v(_vm._s(build.shortSha))])]),_vm._v(\" \"),_c('span',[_c('a',{staticClass:\"issue-date\",attrs:{\"href\":build.url}},[_vm._v(\"\\n \"+_vm._s(build.date)+\"\\n \")])])]),_vm._v(\" \"),_c('div',{staticClass:\"item-time\"},[_c('total-time',{attrs:{\"time\":build.totalTime}})],1)])}))])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-2a1d55c1\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/stage_test_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./stage_test_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2a1d55c1\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./stage_test_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/stage_test_component.vue\n// module id = null\n// module chunks = ","\n\n \n \n {{ time.days }} {{ n__('day', 'days', time.days) }}\n {{ time.hours }} {{ n__('Time|hr', 'Time|hrs', time.hours) }}\n {{ time.mins }} {{ n__('Time|min', 'Time|mins', time.mins) }}\n {{ time.seconds }} {{ s__('Time|s') }}\n \n \n --\n \n \n\n\n\n\n// WEBPACK FOOTER //\n// cycle_analytics/components/total_time_component.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"total-time\"},[(_vm.hasData)?[(_vm.time.days)?[_vm._v(_vm._s(_vm.time.days)+\" \"),_c('span',[_vm._v(_vm._s(_vm.n__('day', 'days', _vm.time.days)))])]:_vm._e(),_vm._v(\" \"),(_vm.time.hours)?[_vm._v(_vm._s(_vm.time.hours)+\" \"),_c('span',[_vm._v(_vm._s(_vm.n__('Time|hr', 'Time|hrs', _vm.time.hours)))])]:_vm._e(),_vm._v(\" \"),(_vm.time.mins && !_vm.time.days)?[_vm._v(_vm._s(_vm.time.mins)+\" \"),_c('span',[_vm._v(_vm._s(_vm.n__('Time|min', 'Time|mins', _vm.time.mins)))])]:_vm._e(),_vm._v(\" \"),(_vm.time.seconds && _vm.hasData === 1 || _vm.time.seconds === 0)?[_vm._v(_vm._s(_vm.time.seconds)+\" \"),_c('span',[_vm._v(_vm._s(_vm.s__('Time|s')))])]:_vm._e()]:[_vm._v(\"\\n --\\n \")]],2)}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// /opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-8ba71742\",\"hasScoped\":false,\"buble\":{\"transforms\":{}}}!/opt/gitlab/embedded/service/gitlab-rails/node_modules/vue-loader/lib/selector.js?type=template&index=0!./cycle_analytics/components/total_time_component.vue\n// module id = null\n// module chunks = ","var normalizeComponent = require(\"!../../../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nimport __vue_script__ from \"!!babel-loader!../../../../../node_modules/vue-loader/lib/selector?type=script&index=0!./total_time_component.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-8ba71742\\\",\\\"hasScoped\\\":false,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../../../node_modules/vue-loader/lib/selector?type=template&index=0!./total_time_component.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/components/total_time_component.vue\n// module id = null\n// module chunks = ","import Vue from 'vue';\nimport Cookies from 'js-cookie';\nimport Flash from '../flash';\nimport Translate from '../vue_shared/translate';\nimport banner from './components/banner.vue';\nimport stageCodeComponent from './components/stage_code_component.vue';\nimport stagePlanComponent from './components/stage_plan_component.vue';\nimport stageComponent from './components/stage_component.vue';\nimport stageReviewComponent from './components/stage_review_component.vue';\nimport stageStagingComponent from './components/stage_staging_component.vue';\nimport stageTestComponent from './components/stage_test_component.vue';\nimport CycleAnalyticsService from './cycle_analytics_service';\nimport CycleAnalyticsStore from './cycle_analytics_store';\n\nVue.use(Translate);\n\n$(() => {\n const OVERVIEW_DIALOG_COOKIE = 'cycle_analytics_help_dismissed';\n\n gl.cycleAnalyticsApp = new Vue({\n el: '#cycle-analytics',\n name: 'CycleAnalytics',\n data() {\n const cycleAnalyticsEl = document.querySelector('#cycle-analytics');\n const cycleAnalyticsService = new CycleAnalyticsService({\n requestPath: cycleAnalyticsEl.dataset.requestPath,\n });\n\n return {\n store: CycleAnalyticsStore,\n state: CycleAnalyticsStore.state,\n isLoading: false,\n isLoadingStage: false,\n isEmptyStage: false,\n hasError: false,\n startDate: 30,\n isOverviewDialogDismissed: Cookies.get(OVERVIEW_DIALOG_COOKIE),\n service: cycleAnalyticsService,\n };\n },\n computed: {\n currentStage() {\n return this.store.currentActiveStage();\n },\n },\n components: {\n banner,\n 'stage-issue-component': stageComponent,\n 'stage-plan-component': stagePlanComponent,\n 'stage-code-component': stageCodeComponent,\n 'stage-test-component': stageTestComponent,\n 'stage-review-component': stageReviewComponent,\n 'stage-staging-component': stageStagingComponent,\n 'stage-production-component': stageComponent,\n },\n created() {\n this.fetchCycleAnalyticsData();\n },\n methods: {\n handleError() {\n this.store.setErrorState(true);\n return new Flash('There was an error while fetching cycle analytics data.');\n },\n initDropdown() {\n const $dropdown = $('.js-ca-dropdown');\n const $label = $dropdown.find('.dropdown-label');\n\n $dropdown.find('li a').off('click').on('click', (e) => {\n e.preventDefault();\n const $target = $(e.currentTarget);\n this.startDate = $target.data('value');\n\n $label.text($target.text().trim());\n this.fetchCycleAnalyticsData({ startDate: this.startDate });\n });\n },\n fetchCycleAnalyticsData(options) {\n const fetchOptions = options || { startDate: this.startDate };\n\n this.isLoading = true;\n\n this.service\n .fetchCycleAnalyticsData(fetchOptions)\n .then(resp => resp.json())\n .then((response) => {\n this.store.setCycleAnalyticsData(response);\n this.selectDefaultStage();\n this.initDropdown();\n this.isLoading = false;\n })\n .catch(() => {\n this.handleError();\n this.isLoading = false;\n });\n },\n selectDefaultStage() {\n const stage = this.state.stages[0];\n this.selectStage(stage);\n },\n selectStage(stage) {\n if (this.isLoadingStage) return;\n if (this.currentStage === stage) return;\n\n if (!stage.isUserAllowed) {\n this.store.setActiveStage(stage);\n return;\n }\n\n this.isLoadingStage = true;\n this.store.setStageEvents([], stage);\n this.store.setActiveStage(stage);\n\n this.service\n .fetchStageData({\n stage,\n startDate: this.startDate,\n })\n .then(resp => resp.json())\n .then((response) => {\n this.isEmptyStage = !response.events.length;\n this.store.setStageEvents(response.events, stage);\n this.isLoadingStage = false;\n })\n .catch(() => {\n this.isEmptyStage = true;\n this.isLoadingStage = false;\n });\n },\n dismissOverviewDialog() {\n this.isOverviewDialogDismissed = true;\n Cookies.set(OVERVIEW_DIALOG_COOKIE, '1', { expires: 365 });\n },\n },\n });\n});\n\n\n\n// WEBPACK FOOTER //\n// ./cycle_analytics/cycle_analytics_bundle.js","import Vue from 'vue';\nimport VueResource from 'vue-resource';\n\nVue.use(VueResource);\n\nexport default class CycleAnalyticsService {\n constructor(options) {\n this.requestPath = options.requestPath;\n this.cycleAnalytics = Vue.resource(this.requestPath);\n }\n\n fetchCycleAnalyticsData(options = { startDate: 30 }) {\n return this.cycleAnalytics.get({ cycle_analytics: { start_date: options.startDate } });\n }\n\n fetchStageData(options) {\n const {\n stage,\n startDate,\n } = options;\n\n return Vue.http.get(`${this.requestPath}/events/${stage.name}.json`, {\n params: {\n cycle_analytics: {\n start_date: startDate,\n },\n },\n });\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./cycle_analytics/cycle_analytics_service.js","export default {\n issue: {\n created_at: '',\n url: '',\n iid: '',\n title: '',\n total_time: {},\n author: {\n avatar_url: '',\n id: '',\n name: '',\n web_url: '',\n },\n },\n plan: {\n title: '',\n commit_url: '',\n short_sha: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: '',\n },\n },\n code: {\n title: '',\n iid: '',\n created_at: '',\n url: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: '',\n },\n },\n test: {\n name: '',\n id: '',\n date: '',\n url: '',\n short_sha: '',\n commit_url: '',\n total_time: {},\n branch: {\n name: '',\n url: '',\n },\n },\n review: {\n title: '',\n iid: '',\n created_at: '',\n url: '',\n state: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: '',\n },\n },\n staging: {\n id: '',\n short_sha: '',\n date: '',\n url: '',\n commit_url: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: '',\n },\n branch: {\n name: '',\n url: '',\n },\n },\n production: {\n title: '',\n created_at: '',\n url: '',\n iid: '',\n total_time: {},\n author: {\n name: '',\n id: '',\n avatar_url: '',\n web_url: '',\n },\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./cycle_analytics/default_event_objects.js","/* eslint-disable no-param-reassign */\n\nimport { __ } from '../locale';\nimport { dasherize } from '../lib/utils/text_utility';\nimport DEFAULT_EVENT_OBJECTS from './default_event_objects';\n\nconst EMPTY_STAGE_TEXTS = {\n issue: __('The issue stage shows the time it takes from creating an issue to assigning the issue to a milestone, or add the issue to a list on your Issue Board. Begin creating issues to see data for this stage.'),\n plan: __('The planning stage shows the time from the previous step to pushing your first commit. This time will be added automatically once you push your first commit.'),\n code: __('The coding stage shows the time from the first commit to creating the merge request. The data will automatically be added here once you create your first merge request.'),\n test: __('The testing stage shows the time GitLab CI takes to run every pipeline for the related merge request. The data will automatically be added after your first pipeline finishes running.'),\n review: __('The review stage shows the time from creating the merge request to merging it. The data will automatically be added after you merge your first merge request.'),\n staging: __('The staging stage shows the time between merging the MR and deploying code to the production environment. The data will be automatically added once you deploy to production for the first time.'),\n production: __('The production stage shows the total time it takes between creating an issue and deploying the code to production. The data will be automatically added once you have completed the full idea to production cycle.'),\n};\n\nexport default {\n state: {\n summary: '',\n stats: '',\n analytics: '',\n events: [],\n stages: [],\n },\n setCycleAnalyticsData(data) {\n this.state = Object.assign(this.state, this.decorateData(data));\n },\n decorateData(data) {\n const newData = {};\n\n newData.stages = data.stats || [];\n newData.summary = data.summary || [];\n\n newData.summary.forEach((item) => {\n item.value = item.value || '-';\n });\n\n newData.stages.forEach((item) => {\n const stageSlug = dasherize(item.name.toLowerCase());\n item.active = false;\n item.isUserAllowed = data.permissions[stageSlug];\n item.emptyStageText = EMPTY_STAGE_TEXTS[stageSlug];\n item.component = `stage-${stageSlug}-component`;\n item.slug = stageSlug;\n });\n newData.analytics = data;\n return newData;\n },\n setLoadingState(state) {\n this.state.isLoading = state;\n },\n setErrorState(state) {\n this.state.hasError = state;\n },\n deactivateAllStages() {\n this.state.stages.forEach((stage) => {\n stage.active = false;\n });\n },\n setActiveStage(stage) {\n this.deactivateAllStages();\n stage.active = true;\n },\n setStageEvents(events, stage) {\n this.state.events = this.decorateEvents(events, stage);\n },\n decorateEvents(events, stage) {\n const newEvents = [];\n\n events.forEach((item) => {\n if (!item) return;\n\n const eventItem = Object.assign({}, DEFAULT_EVENT_OBJECTS[stage.slug], item);\n\n eventItem.totalTime = eventItem.total_time;\n\n if (eventItem.author) {\n eventItem.author.webUrl = eventItem.author.web_url;\n eventItem.author.avatarUrl = eventItem.author.avatar_url;\n }\n\n if (eventItem.created_at) eventItem.createdAt = eventItem.created_at;\n if (eventItem.short_sha) eventItem.shortSha = eventItem.short_sha;\n if (eventItem.commit_url) eventItem.commitUrl = eventItem.commit_url;\n\n delete eventItem.author.web_url;\n delete eventItem.author.avatar_url;\n delete eventItem.total_time;\n delete eventItem.created_at;\n delete eventItem.short_sha;\n delete eventItem.commit_url;\n\n newEvents.push(eventItem);\n });\n\n return newEvents;\n },\n currentActiveStage() {\n return this.state.stages.find(stage => stage.active);\n },\n};\n\n\n\n// WEBPACK FOOTER //\n// ./cycle_analytics/cycle_analytics_store.js","module.exports = \"\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/svg/icon_branch.svg\n// module id = ./cycle_analytics/svg/icon_branch.svg\n// module chunks = cycle_analytics","module.exports = \"\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/svg/icon_build_status.svg\n// module id = ./cycle_analytics/svg/icon_build_status.svg\n// module chunks = cycle_analytics","module.exports = \"\\n\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./cycle_analytics/svg/icon_commit.svg\n// module id = ./cycle_analytics/svg/icon_commit.svg\n// module chunks = cycle_analytics"],"sourceRoot":""}
\n {{ __('Cycle Analytics gives an overview of how much time it takes to go from idea to production in your project.') }}\n
\n \n {{__('Read more')}}\n \n