{"version":3,"sources":["webpack:///./vue_shared/components/user_avatar/user_avatar_image.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_image.vue?5b71","webpack:///vue_shared/components/user_avatar/user_avatar_image.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_image.vue?7c05","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/button_group/button_group.js","webpack:///./graphql_shared/fragments/author.fragment.graphql","webpack:///./vue_shared/mixins/timeago.js","webpack:///./blob/components/blob_content.vue","webpack:///./vue_shared/components/blob_viewers/mixins.js","webpack:///vue_shared/components/blob_viewers/rich_viewer.vue","webpack:///./vue_shared/components/blob_viewers/rich_viewer.vue?5cea","webpack:///./vue_shared/components/blob_viewers/constants.js","webpack:///./vue_shared/components/blob_viewers/rich_viewer.vue?32e2","webpack:///./vue_shared/components/blob_viewers/rich_viewer.vue","webpack:///./vue_shared/components/blob_viewers/simple_viewer.vue?9b4b","webpack:///vue_shared/components/blob_viewers/simple_viewer.vue","webpack:///./vue_shared/components/blob_viewers/simple_viewer.vue?e72b","webpack:///./vue_shared/components/blob_viewers/simple_viewer.vue","webpack:///./blob/components/blob_content_error.vue?c472","webpack:///blob/components/blob_content_error.vue","webpack:///./blob/components/blob_content_error.vue?fb01","webpack:///./blob/components/blob_content_error.vue","webpack:///./blob/components/blob_content.vue?4e76","webpack:///blob/components/blob_content.vue","webpack:///./blob/components/blob_content.vue?0c8b","webpack:///./blob/components/blob_header.vue","webpack:///./blob/components/blob_header_default_actions.vue?9926","webpack:///blob/components/blob_header_default_actions.vue","webpack:///./blob/components/blob_header_default_actions.vue?aabb","webpack:///./blob/components/blob_header_default_actions.vue","webpack:///./blob/components/blob_header_viewer_switcher.vue?5a55","webpack:///blob/components/blob_header_viewer_switcher.vue","webpack:///./blob/components/blob_header_viewer_switcher.vue?0c53","webpack:///./blob/components/blob_header_viewer_switcher.vue","webpack:///./blob/components/blob_header.vue?1417","webpack:///blob/components/blob_header.vue","webpack:///./blob/components/blob_header.vue?1798","webpack:///./blob/components/constants.js","webpack:////build/source/node_modules/@gitlab/svgs/src/file_icon_map.js","webpack:///./vue_shared/components/file_icon.vue","webpack:///./vue_shared/components/file_icon.vue?6a90","webpack:///vue_shared/components/file_icon.vue","webpack:///./vue_shared/components/file_icon.vue?7152","webpack:///./vue_shared/components/code_dropdown/clone_code_dropdown.vue","webpack:///./vue_shared/components/code_dropdown/clone_code_dropdown.vue?4e87","webpack:///vue_shared/components/code_dropdown/clone_code_dropdown.vue","webpack:///./vue_shared/components/code_dropdown/clone_code_dropdown.vue?9020","webpack:///./blob/components/blob_header_filepath.vue","webpack:///./blob/components/blob_header_filepath.vue?9ed2","webpack:///blob/components/blob_header_filepath.vue","webpack:///./blob/components/blob_header_filepath.vue?eaa2","webpack:///./vue_shared/components/time_ago_tooltip.vue","webpack:///./vue_shared/components/time_ago_tooltip.vue?3039","webpack:///vue_shared/components/time_ago_tooltip.vue","webpack:///./vue_shared/components/time_ago_tooltip.vue?f6d8","webpack:///../images/no_avatar.png","webpack:///./notes/event_hub.js","webpack:///./vue_shared/components/source_viewer/components/blame_info.vue","webpack:///./vue_shared/components/source_viewer/components/blame_info.vue?1023","webpack:///vue_shared/components/source_viewer/components/blame_info.vue","webpack:///./vue_shared/components/source_viewer/components/blame_info.vue?106f","webpack:///./blob/viewer/index.js","webpack:///blob/components/table_contents.vue","webpack:///./blob/components/table_contents.vue?0d7d","webpack:///./blob/components/table_contents.vue?0f7c","webpack:///./blob/components/table_contents.vue","webpack:///./vue_shared/components/markdown/field_view.vue","webpack:///./vue_shared/components/markdown/field_view.vue?931e","webpack:///vue_shared/components/markdown/field_view.vue","webpack:///./vue_shared/components/markdown/field_view.vue?3610","webpack:///./lib/utils/number_utils.js","webpack:///./vue_shared/components/code_dropdown/code_dropdown_item.vue","webpack:///./vue_shared/components/code_dropdown/code_dropdown_item.vue?b75a","webpack:///vue_shared/components/code_dropdown/code_dropdown_item.vue","webpack:///./vue_shared/components/code_dropdown/code_dropdown_item.vue?4471","webpack:///./vue_shared/components/user_avatar/user_avatar_link.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_link.vue?c50c","webpack:///vue_shared/components/user_avatar/user_avatar_link.vue","webpack:///./vue_shared/components/user_avatar/user_avatar_link.vue?d6b5","webpack:///./repository/components/commit_info.vue","webpack:///./repository/components/commit_info.vue?ebc4","webpack:///repository/components/commit_info.vue","webpack:///./repository/components/commit_info.vue?05f7","webpack:///./vue_shared/components/source_viewer/utils.js","webpack:///./repository/queries/ref.query.graphql","webpack:///./blob/queries/user_info.query.graphql","webpack:///./repository/mixins/get_ref.js","webpack:////build/source/node_modules/@gitlab/ui/dist/components/base/avatar_link/avatar_link.js","webpack:///./vue_shared/components/source_viewer/queries/blame_data.query.graphql","webpack:///./behaviors/shortcuts/shortcuts_toggle.js","webpack:///./blob/queries/application_info.query.graphql"],"names":["name","components","GlTooltip","GlAvatar","props","lazy","type","Boolean","required","default","imgSrc","String","defaultAvatarUrl","cssClasses","imgAlt","__","size","Number","Object","tooltipText","tooltipPlacement","pseudo","computed","sanitizedSource","baseSrc","indexOf","includes","maximumSize","_isObject","Math","max","values","resultantSrcAttribute","placeholderImage","component","_vm","this","_c","_self","ref","staticClass","class","style","backgroundImage","attrs","undefined","_v","$scopedSlots","$refs","userAvatar","_t","_s","_e","__vue_script__","vertical","__vue_component__","render","_h","$createElement","_g","$listeners","staticRenderFns","doc","loc","source","definitionRefs","findOperation","i","definitions","length","element","value","forEach","def","refs","Set","collectFragmentReferences","node","kind","add","selectionSet","selections","selection","variableDefinitions","module","exports","operationName","newDoc","hasOwnProperty","opRefs","allRefs","newRefs","refName","prevRefs","has","childRef","op","push","oneQuery","methods","timeFormatted","time","format","getTimeago","newDate","timeagoLanguageCode","tooltipTitle","localeDateFormat","asDateTimeFull","content","richViewer","isRawContent","fileName","hideLineNumbers","mounted","eventHub","$emit","SNIPPET_MEASURE_BLOBS_CONTENT","MarkdownFieldView","directives","SafeHtml","mixins","ViewerMixin","data","isLoading","initialContent","remainingContent","rawContent","isMarkup","created","optimizeMarkupRendering","renderRemainingMarkup","handleBlobRichViewer","tmpWrapper","document","createElement","innerHTML","sanitize","$options","safeHtmlConfig","fileContent","querySelector","childNodes","slice","append","outerHTML","_this","onContentLoaded","$el","nextChunkEnd","setTimeout","handleLocationHash","defaultConfig","FORBID_ATTR","rawName","expression","arg","Blame","inject","blobPath","showBlame","isBlameLinkHidden","projectPath","lineNumbers","currentRef","blamePath","highlightedLine","blameData","fromLine","toLine","showBlameLink","blameInfoForRange","reduce","result","blame","index","shouldRender","blameOffset","calculateBlameOffset","lineno","watch","handler","isVisible","toggleBlameClasses","requestBlameInfo","immediate","hash","window","location","scrollToLine","scroll","lineToHighlight","currentlyHighlighted","classList","remove","scrollIntoView","behavior","block","_data$project","_blob$blame","$apollo","query","blameDataQuery","variables","fullPath","filePath","blob","project","repository","blobs","nodes","blameGroups","groups","isDuplicate","userColorScheme","gon","user_color_scheme","_l","line","key","on","$event","blobHash","GlSprintf","GlLink","viewerError","notStoredExternally","BLOB_RENDER_ERRORS","REASONS","EXTERNAL","id","renderErrorReason","defaultReasonPath","keys","find","reason","defaultReason","text","externalStorage","renderErrorOptions","OPTIONS","LOAD","condition","shouldShowLoadBtn","SHOW_SOURCE","shouldShowSourceBtn","DOWNLOAD","href","rawPath","COLLAPSED","renderedAsText","errorMessage","scopedSlots","_u","fn","proxy","option","target","event","conjunction","GlLoadingIcon","BlobContentError","loading","activeViewer","richContentLoaded","viewer","RichViewer","SimpleViewer","renderError","_this$blob","_content$split","rawTextBlob","split","isContentLoaded","RICH_BLOB_VIEWER","BLOB_RENDER_EVENT_LOAD","BLOB_RENDER_EVENT_SHOW_SOURCE","_d","tag","path","fileType","GlButtonGroup","GlButton","GlTooltipDirective","canDownloadCode","SIMPLE_BLOB_VIEWER","hasRenderError","isBinary","environmentName","environmentPath","isEmpty","overrideCopy","downloadUrl","setUrlParams","inline","relativePathToAbsolute","getBaseURL","copyDisabled","getBlobHashTarget","showCopyButton","environmentTitle","sprintf","s__","onCopy","BTN_COPY_CONTENTS_TITLE","BTN_DOWNLOAD_TITLE","BTN_RAW_TITLE","modifiers","InternalEvents","mixin","glFeatureFlagMixin","docIcon","showViewerToggles","showBlameToggle","isSimpleViewer","isRichViewer","isBlameViewer","BLAME_VIEWER","switchToViewer","trackEvent","SIMPLE_BLOB_VIEWER_TITLE","SIMPLE_BLOB_VIEWER_LABEL","RICH_BLOB_VIEWER_TITLE","RICH_BLOB_VIEWER_LABEL","BLAME_TITLE","glFeatures","blobOverflowMenu","ViewerSwitcher","DefaultActions","BlobFilepath","TableOfContents","WebIdeLink","apollo","currentUser","userInfoQuery","error","gitpodEnabled","applicationInfoQuery","hideDefaultActions","hideViewerSwitcher","activeViewerType","showPath","showPathAsLink","showForkSuggestion","showWebIdeForkSuggestion","projectId","showBlobSize","editButtonVariant","showDefaultActions","showWebIdeLink","archived","editBlobPath","rawSize","blobSwitcherDocIcon","_this$blob$richViewer","projectIdAsNumber","getIdFromGraphQLId","newVal","oldVal","proxyCopyRequest","simpleViewer","model","callback","$$v","ideEditPath","pipelineEditorPath","gitpodBlobUrl","preferencesGitpodPath","profileEnableGitpodPath","externalStorageUrl","environmentFormattedExternalUrl","environmentExternalUrlForRouteMap","limit","numberToHumanSize","TOO_LARGE","lfs","build_artifact","fileExtensionIcons","html","htm","html_vm","asp","jade","pug","md","markdown","mdown","mkd","mkdn","rst","blink","css","scss","sass","less","json","yaml","yml","xml","plist","xsd","dtd","xsl","xslt","resx","iml","xquery","tmLanguage","manifest","png","jpeg","jpg","gif","svg","ico","tif","tiff","psd","psb","ami","apx","bmp","bpg","brk","cur","dds","dng","exr","fpx","gbr","img","jbig2","jb2","jng","jxr","pbm","pgf","pic","raw","webp","js","cjs","ejs","esx","mjs","jsx","tsx","ini","dlc","dll","config","conf","properties","prop","settings","toml","prefs","ts","cts","mts","marko","pdf","xlsx","xls","ods","csv","tsv","vscodeignore","vsixmanifest","vsix","suo","sln","csproj","vb","pdb","sql","pks","pkb","accdb","mdb","sqlite","cs","zip","tar","gz","xz","bzip2","gzip","rar","tgz","exe","msi","java","jar","jsp","c","m","h","cc","cpp","mm","cxx","hpp","go","py","url","sh","ksh","csh","tcsh","zsh","bash","bat","cmd","ps1","psm1","psd1","ps1xml","psc1","pssc","gradle","docx","odt","rtf","cer","cert","crt","pub","pem","asc","gpg","woff","woff2","ttf","eot","suit","otf","bmap","fnt","odttf","ttc","font","fonts","sui","ntf","mrf","lib","bib","rb","erb","fs","fsx","fsi","fsproj","swift","ino","dockerignore","dockerfile","tex","cls","sty","pptx","ppt","pptm","potx","pot","potm","ppsx","ppsm","pps","ppam","ppa","odp","webm","mkv","flv","vob","ogv","ogg","gifv","avi","mov","qt","wmv","yuv","rm","rmvb","mp4","m4v","mpg","mp2","mpeg","mpe","mpv","m2v","vdi","vbox","ics","mp3","flac","m4a","wma","aiff","coffee","txt","graphql","rs","raml","xaml","hs","kt","kts","patch","lua","clj","cljs","groovy","r","rmd","dart","as","mxml","ahk","swf","swc","cmake","asm","a51","inc","nasm","s","ms","agc","ags","aea","argus","mitigus","binsource","vue","ml","mli","cmx","lock","hbs","mustache","pl","pm","hx","pp","ex","exs","ls","erl","twig","jl","elm","pure","tpl","styl","re","rei","cmj","merlin","v","vhd","sv","svh","nb","wl","wls","njk","nunjucks","robot","sol","au3","haml","yang","tf","tfvars","tfstate","applescript","cake","feature","nim","nimble","apib","apiblueprint","vfl","kl","pcss","sss","todo","cfml","cfc","lucee","cabal","nix","slim","http","rest","rql","restql","kv","graphcool","sbt","cr","cu","cuh","log","twoFileExtensionIcons","fileNameIcons","makefile","gradlew","COPYING","LICENSE","LICENCE","changelog","CREDITS","procfile","jenkinsfile","Rakefile","browserslist","getIconForFile","join","pop","toLowerCase","GlIcon","fileMode","folder","submodule","opened","isSymlink","FILE_SYMLINK_MODE","spriteHref","iconName","sprite_file_icons","folderIconName","iconSizeClass","GlDisclosureDropdown","CodeDropdownItem","sshUrl","httpUrl","kerberosUrl","embeddable","httpLabel","_getHTTPProtocol","protocol","getHTTPProtocol","toUpperCase","sections","label","link","testId","encodeURI","labels","defaultLabel","FileIcon","ClipboardButton","GlBadge","showAsLink","blobSize","gfmCopyText","showLfsBadge","storedExternally","linkHref","webPath","_b","GlTruncate","timeagoMixin","Date","cssClass","dateTimeFormat","DEFAULT_DATE_TIME_FORMAT","validator","timeFormat","DATE_TIME_FORMATS","enableTruncation","timeAgo","placement","createEventHub","CommitInfo","blameInfo","Array","top","commit","span","commitData","projectBlameLink","loadViewer","viewerParam","dataset","loaded","Promise","resolve","axios","get","then","requestIdleCallback","initAuxiliaryViewer","auxiliaryViewer","loadRichBlobViewer","catch","createAlert","message","BlobViewer","constructor","_viewer$dataset","performanceMarkAndMeasure","mark","REPO_BLOB_LOAD_VIEWER_START","richType","initMainViewers","$fileHolder","$","switcher","switcherBtns","querySelectorAll","copySourceBtn","copySourceBtnTooltip","initBindings","switchToInitialViewer","initialViewerName","from","el","addEventListener","switchViewHandler","bind","contains","blur","e","currentTarget","preventDefault","toggleCopyButtonState","setAttribute","fixTitle","_this2","REPO_BLOB_SWITCH_TO_VIEWER_START","newViewer","oldButton","newButton","oldViewer","renderGFM","trigger","REPO_BLOB_LOAD_VIEWER_FINISH","measures","REPO_BLOB_LOAD_VIEWER","start","REPO_BLOB_SWITCH_VIEWER","getHeaderNumber","parseInt","tagName","match","isHidden","items","blobViewer","blobViewerAttr","attr","getAttribute","observer","MutationObserver","generateHeaders","disconnect","observe","attributes","beforeDestroy","headers","firstHeader","map","textContent","trim","extraAttrs","paddingLeft","handleGFM","bytesToMiB","number","BYTES_IN_KIB","bytesToGiB","numberToHumanSizeSplit","digits","locale","abs","digitsOptions","minimumFractionDigits","maximumFractionDigits","formatNumberWithLocaleAndDigits","n","formatNumber","toString","humanSize","numberToMetricPrefix","uppercase","THOUSAND","MILLION","toFixed","median","arr","middle","floor","sorted","sort","a","b","changeInPercent","firstY","lastY","round","formattedChangeInPercent","nonFiniteResult","change","isFinite","isNumeric","isNaN","numberRegex","isPositiveInteger","test","countFloatingPointDigits","num","decimal","parts","integer","splitDecimalNumber","GlDisclosureDropdownItem","GlFormGroup","GlFormInputGroup","labelClass","inputId","copyURLTooltip","UserAvatarImage","GlAvatarLink","imgCssClasses","imgCssWrapperClasses","imgSize","popoverUserId","popoverUsername","username","userId","shouldShowUsername","avatarTooltipText","stopPropagation","UserAvatarLink","TimeagoTooltip","getRefMixin","prevBlameLink","showDescription","commitDescription","_this$commit","descriptionHtml","replace","avatarLinkAltText","authorName","truncateAuthorName","toggleShowDescription","ADD_TAGS","i18n","toggleCommitDescription","authored","author","avatarUrl","authorGravatar","titleHtml","open","authoredDate","BLAME_INFO_CLASSLIST","findLineNumberElement","lineNumber","getElementById","findLineContentElement","_document$querySelect","_findLineContentEleme","blobViewerOffset","getBoundingClientRect","_prevBlame$commit","prevBlame","currBlame","identicalSha","sha","lineNumberSmaller","method","_findLineNumberElemen","_findLineNumberElemen2","lineNumberEl","parentElement","lineContentEl","lineNumberSpanEl","lineContentSpanEl","refQuery","manual","escapedRef","$attrs","names","concat","filter","shouldDisableShortcuts","keyboard_shortcuts_enabled","disableShortcuts","localStorage","setItem","Mousetrap","pause"],"mappings":"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","file":"commons-pages.projects.blob.show-pages.projects.show-pages.projects.snippets.show-pages.projects.tre-c684fcf6.b9b3fe59.chunk.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{ref:\"userAvatar\"},[_c('gl-avatar',{staticClass:\"gl-bg-cover\",class:{\n lazy: _vm.lazy,\n [_vm.cssClasses]: true,\n },style:(_vm.pseudo ? { backgroundImage: `url('${_vm.sanitizedSource}')` } : null),attrs:{\"src\":_vm.pseudo ? undefined : _vm.resultantSrcAttribute,\"data-src\":_vm.sanitizedSource,\"size\":_vm.size,\"alt\":_vm.imgAlt,\"data-testid\":\"user-avatar-image\"}}),_vm._v(\" \"),(_vm.tooltipText || _vm.$scopedSlots.default)?_c('gl-tooltip',{attrs:{\"target\":() => _vm.$refs.userAvatar,\"placement\":_vm.tooltipPlacement,\"boundary\":\"window\"}},[_vm._t(\"default\",function(){return [_vm._v(_vm._s(_vm.tooltipText))]})],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_image.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_image.vue?vue&type=script&lang=js\"","\n\n\n \n \n\n $refs.userAvatar\"\n :placement=\"tooltipPlacement\"\n boundary=\"window\"\n >\n {{ tooltipText }}\n \n \n\n","import { render, staticRenderFns } from \"./user_avatar_image.vue?vue&type=template&id=0836472c\"\nimport script from \"./user_avatar_image.vue?vue&type=script&lang=js\"\nexport * from \"./user_avatar_image.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'GlButtonGroup',\n props: {\n /**\n * When set, rendered the button group in vertical mode.\n */\n vertical: {\n type: Boolean,\n required: false,\n default: false\n }\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',_vm._g({class:!_vm.vertical ? 'btn-group' : 'btn-group-vertical',attrs:{\"role\":\"group\"}},_vm.$listeners),[_vm._t(\"default\")],2)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"FragmentDefinition\",\"name\":{\"kind\":\"Name\",\"value\":\"Author\"},\"typeCondition\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"User\"}},\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"avatarUrl\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"name\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"username\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"webUrl\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"webPath\"},\"arguments\":[],\"directives\":[]}]}}],\"loc\":{\"start\":0,\"end\":82}};\n doc.loc.source = {\"body\":\"fragment Author on User {\\n id\\n avatarUrl\\n name\\n username\\n webUrl\\n webPath\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"Author\"] = oneQuery(doc, \"Author\");\n \n","import {\n getTimeago,\n localeDateFormat,\n newDate,\n timeagoLanguageCode,\n} from '~/lib/utils/datetime_utility';\n\n/**\n * Mixin with time ago methods used in some vue components\n */\nexport default {\n methods: {\n timeFormatted(time, format) {\n const timeago = getTimeago(format);\n\n return timeago.format(newDate(time), timeagoLanguageCode);\n },\n\n tooltipTitle(time) {\n return localeDateFormat.asDateTimeFull.format(newDate(time));\n },\n },\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"blob-viewer\",attrs:{\"data-type\":_vm.activeViewer.type,\"data-loaded\":_vm.isContentLoaded}},[(_vm.loading)?_c('gl-loading-icon',{staticClass:\"my-4 mx-auto\",attrs:{\"size\":\"lg\",\"color\":\"dark\"}}):[(_vm.viewerError)?_c('blob-content-error',{attrs:{\"viewer-error\":_vm.viewerError,\"blob\":_vm.blob},on:_vm._d({},[_vm.$options.BLOB_RENDER_EVENT_LOAD,function($event){return _vm.$emit(_vm.$options.BLOB_RENDER_EVENT_LOAD)},_vm.$options.BLOB_RENDER_EVENT_SHOW_SOURCE,function($event){return _vm.$emit(_vm.$options.BLOB_RENDER_EVENT_SHOW_SOURCE)}])}):_c(_vm.viewer,{ref:\"contentViewer\",tag:\"component\",attrs:{\"content\":_vm.content,\"current-ref\":_vm.currentRef,\"project-path\":_vm.projectPath,\"blob-path\":_vm.blob.path || '',\"rich-viewer\":_vm.richViewer,\"is-raw-content\":_vm.isRawContent,\"show-blame\":_vm.showBlame,\"file-name\":_vm.blob.name,\"blame-path\":_vm.blob.blamePath,\"type\":_vm.activeViewer.fileType,\"line-numbers\":_vm.lineNumbers,\"is-blame-link-hidden\":_vm.isBlameLinkHidden,\"hide-line-numbers\":_vm.hideLineNumbers,\"data-testid\":\"blob-viewer-file-content\"},on:{\"richContentLoaded\":function($event){_vm.richContentLoaded = true}}})]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import eventHub from '~/blob/components/eventhub';\nimport { SNIPPET_MEASURE_BLOBS_CONTENT } from '~/performance/constants';\n\nexport default {\n props: {\n content: {\n type: String,\n required: false,\n default: null,\n },\n richViewer: {\n type: String,\n default: '',\n required: false,\n },\n type: {\n type: String,\n required: true,\n },\n isRawContent: {\n type: Boolean,\n default: false,\n required: false,\n },\n fileName: {\n type: String,\n required: false,\n default: '',\n },\n hideLineNumbers: {\n type: Boolean,\n required: false,\n default: false,\n },\n },\n mounted() {\n eventHub.$emit(SNIPPET_MEASURE_BLOBS_CONTENT);\n },\n};\n","\n\n \n\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rich_viewer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rich_viewer.vue?vue&type=script&lang=js\"","export const HIGHLIGHT_CLASS_NAME = 'hll';\nexport const MARKUP_FILE_TYPE = 'markup';\nexport const MARKUP_CONTENT_SELECTOR = '.js-markup-content';\nexport const ELEMENTS_PER_CHUNK = 20;\nexport const CONTENT_LOADED_EVENT = 'richContentLoaded';\nexport const MAX_BLAME_LINES = 100;\n","import { render, staticRenderFns } from \"./rich_viewer.vue?vue&type=template&id=013c518e\"\nimport script from \"./rich_viewer.vue?vue&type=script&lang=js\"\nexport * from \"./rich_viewer.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('markdown-field-view',{directives:[{name:\"safe-html\",rawName:\"v-safe-html:[$options.safeHtmlConfig]\",value:(_vm.rawContent),expression:\"rawContent\",arg:_vm.$options.safeHtmlConfig}],ref:\"content\",attrs:{\"is-loading\":_vm.isLoading}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./simple_viewer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./simple_viewer.vue?vue&type=script&lang=js\"","\n\n \n \n \n \n \n \n \n {{ line }}\n \n \n \n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./simple_viewer.vue?vue&type=template&id=7a8ba104\"\nimport script from \"./simple_viewer.vue?vue&type=script&lang=js\"\nexport * from \"./simple_viewer.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"file-content code js-syntax-highlight gl-flex\",class:_vm.$options.userColorScheme},[(_vm.showBlame && _vm.blameInfoForRange.length)?_c('blame',{attrs:{\"blame-info\":_vm.blameInfoForRange}}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"line-numbers !gl-px-0\"},_vm._l((_vm.lineNumbers),function(line){return _c('div',{key:line,staticClass:\"diff-line-num line-links gl-flex\"},[(_vm.showBlameLink)?_c('a',{staticClass:\"file-line-blame -gl-mx-2 gl-select-none !gl-shadow-none\",attrs:{\"href\":`${_vm.blamePath}#L${line}`}}):_vm._e(),_vm._v(\" \"),_c('a',{key:line,staticClass:\"file-line-num gl-select-none !gl-shadow-none\",attrs:{\"id\":`L${line}`,\"href\":`#L${line}`,\"data-line-number\":line},on:{\"click\":function($event){return _vm.scrollToLine(`#LC${line}`)}}},[_vm._v(\"\\n \"+_vm._s(line)+\"\\n \")])])}),0),_vm._v(\" \"),_c('div',{staticClass:\"blob-content gl-flex gl-w-full gl-flex-col gl-overflow-y-auto\"},[_c('pre',{staticClass:\"code highlight !gl-p-0\"},[_c('code',{directives:[{name:\"safe-html\",rawName:\"v-safe-html\",value:(_vm.content),expression:\"content\"}],attrs:{\"data-blob-hash\":_vm.blobHash}})])])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_content_error.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_content_error.vue?vue&type=script&lang=js\"","\n\n \n \n \n {{ renderErrorReason }}\n \n \n \n {{ option.text }}\n {{ option.conjunction }}\n \n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./blob_content_error.vue?vue&type=template&id=5fc7703d\"\nimport script from \"./blob_content_error.vue?vue&type=script&lang=js\"\nexport * from \"./blob_content_error.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"file-content code\"},[_c('div',{staticClass:\"text-center py-4\"},[_c('gl-sprintf',{attrs:{\"message\":_vm.$options.errorMessage},scopedSlots:_vm._u([{key:\"reason\",fn:function(){return [_vm._v(_vm._s(_vm.renderErrorReason))]},proxy:true},{key:\"options\",fn:function(){return [_vm._l((_vm.renderErrorOptions),function(option){return [(option.condition)?_c('span',{key:option.text},[_c('gl-link',{attrs:{\"href\":option.href,\"target\":option.target,\"data-test-id\":`option-${option.id}`},on:{\"click\":function($event){option.event && _vm.$emit(option.event)}}},[_vm._v(_vm._s(option.text))]),_vm._v(\"\\n \"+_vm._s(option.conjunction)+\"\\n \")],1):_vm._e()]})]},proxy:true}])})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_content.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_content.vue?vue&type=script&lang=js\"","\n\n \n \n\n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./blob_content.vue?vue&type=template&id=7c5fb91e\"\nimport script from \"./blob_content.vue?vue&type=script&lang=js\"\nexport * from \"./blob_content.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"js-file-title file-title-flex-parent\"},[_c('div',{staticClass:\"gl-mb-3 gl-flex gl-gap-3 md:gl-mb-0\"},[(!_vm.glFeatures.blobOverflowMenu)?_c('table-of-contents',{staticClass:\"gl-pr-2\"}):_vm._e(),_vm._v(\" \"),_c('blob-filepath',{attrs:{\"blob\":_vm.blob,\"show-path\":_vm.showPath,\"show-as-link\":_vm.showPathAsLink,\"show-blob-size\":_vm.showBlobSize},scopedSlots:_vm._u([{key:\"filepath-prepend\",fn:function(){return [_vm._t(\"prepend\")]},proxy:true}],null,true)})],1),_vm._v(\" \"),_c('div',{staticClass:\"file-actions gl-flex gl-flex-wrap gl-gap-3\"},[(!_vm.hideViewerSwitcher)?_c('viewer-switcher',_vm._g({attrs:{\"doc-icon\":_vm.blobSwitcherDocIcon,\"show-blame-toggle\":_vm.showBlameToggle,\"show-viewer-toggles\":Boolean(_vm.blob.simpleViewer && _vm.blob.richViewer)},model:{value:(_vm.viewer),callback:function ($$v) {_vm.viewer=$$v},expression:\"viewer\"}},_vm.$listeners)):_vm._e(),_vm._v(\" \"),(_vm.glFeatures.blobOverflowMenu)?_c('table-of-contents',{staticClass:\"gl-pr-2\"}):_vm._e(),_vm._v(\" \"),(_vm.showWebIdeLink)?_c('web-ide-link',_vm._g({staticClass:\"sm:!gl-ml-0\",attrs:{\"show-edit-button\":!_vm.isBinary,\"button-variant\":_vm.editButtonVariant,\"edit-url\":_vm.blob.editBlobPath,\"web-ide-url\":_vm.blob.ideEditPath,\"needs-to-fork\":_vm.showForkSuggestion,\"needs-to-fork-with-web-ide\":_vm.showWebIdeForkSuggestion,\"show-pipeline-editor-button\":Boolean(_vm.blob.pipelineEditorPath),\"pipeline-editor-url\":_vm.blob.pipelineEditorPath,\"gitpod-url\":_vm.blob.gitpodBlobUrl,\"show-gitpod-button\":_vm.gitpodEnabled,\"gitpod-enabled\":_vm.currentUser && _vm.currentUser.gitpodEnabled,\"project-path\":_vm.projectPath,\"project-id\":_vm.projectIdAsNumber,\"user-preferences-gitpod-path\":_vm.currentUser && _vm.currentUser.preferencesGitpodPath,\"user-profile-enable-gitpod-path\":_vm.currentUser && _vm.currentUser.profileEnableGitpodPath,\"is-blob\":\"\",\"disable-fork-modal\":\"\"}},_vm.$listeners)):_vm._e(),_vm._v(\" \"),_vm._t(\"actions\"),_vm._v(\" \"),(_vm.showDefaultActions)?_c('default-actions',{attrs:{\"raw-path\":_vm.blob.externalStorageUrl || _vm.blob.rawPath,\"active-viewer\":_vm.viewer,\"has-render-error\":_vm.hasRenderError,\"is-binary\":_vm.isBinary,\"environment-name\":_vm.blob.environmentFormattedExternalUrl,\"environment-path\":_vm.blob.environmentExternalUrlForRouteMap,\"is-empty\":_vm.isEmpty,\"override-copy\":_vm.overrideCopy},on:{\"copy\":_vm.proxyCopyRequest}}):_vm._e()],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header_default_actions.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header_default_actions.vue?vue&type=script&lang=js\"","\n\n \n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./blob_header_default_actions.vue?vue&type=template&id=36e39768\"\nimport script from \"./blob_header_default_actions.vue?vue&type=script&lang=js\"\nexport * from \"./blob_header_default_actions.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-button-group',{attrs:{\"data-testid\":\"default-actions-container\"}},[(_vm.showCopyButton)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"js-copy-blob-source-btn\",attrs:{\"aria-label\":_vm.$options.BTN_COPY_CONTENTS_TITLE,\"title\":_vm.$options.BTN_COPY_CONTENTS_TITLE,\"disabled\":_vm.copyDisabled,\"data-clipboard-target\":_vm.getBlobHashTarget,\"data-testid\":\"copy-contents-button\",\"icon\":\"copy-to-clipboard\",\"category\":\"primary\",\"variant\":\"default\"},on:{\"click\":_vm.onCopy}}):_vm._e(),_vm._v(\" \"),(!_vm.isBinary)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"aria-label\":_vm.$options.BTN_RAW_TITLE,\"title\":_vm.$options.BTN_RAW_TITLE,\"href\":_vm.rawPath,\"target\":\"_blank\",\"icon\":\"doc-code\",\"category\":\"primary\",\"variant\":\"default\"}}):_vm._e(),_vm._v(\" \"),(!_vm.isEmpty && _vm.canDownloadCode)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"aria-label\":_vm.$options.BTN_DOWNLOAD_TITLE,\"title\":_vm.$options.BTN_DOWNLOAD_TITLE,\"href\":_vm.downloadUrl,\"data-testid\":\"download-button\",\"target\":\"_blank\",\"icon\":\"download\",\"category\":\"primary\",\"variant\":\"default\"}}):_vm._e(),_vm._v(\" \"),(_vm.environmentName && _vm.environmentPath)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"aria-label\":_vm.environmentTitle,\"title\":_vm.environmentTitle,\"href\":_vm.environmentPath,\"data-testid\":\"environment\",\"target\":\"_blank\",\"icon\":\"external-link\",\"category\":\"primary\",\"variant\":\"default\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header_viewer_switcher.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header_viewer_switcher.vue?vue&type=script&lang=js\"","\n\n \n {{ glFeatures.blobOverflowMenu ? $options.SIMPLE_BLOB_VIEWER_LABEL : '' }}\n {{ glFeatures.blobOverflowMenu ? $options.RICH_BLOB_VIEWER_LABEL : '' }}\n {{ __('Blame') }}\n \n\n","import { render, staticRenderFns } from \"./blob_header_viewer_switcher.vue?vue&type=template&id=cb1d75f4\"\nimport script from \"./blob_header_viewer_switcher.vue?vue&type=script&lang=js\"\nexport * from \"./blob_header_viewer_switcher.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-button-group',{staticClass:\"js-blob-viewer-switcher\"},[(_vm.showViewerToggles)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"js-blob-viewer-switch-btn\",attrs:{\"aria-label\":_vm.$options.SIMPLE_BLOB_VIEWER_TITLE,\"title\":_vm.$options.SIMPLE_BLOB_VIEWER_TITLE,\"selected\":_vm.isSimpleViewer,\"data-testid\":\"simple-blob-viewer-button\",\"icon\":_vm.glFeatures.blobOverflowMenu ? '' : 'code',\"category\":\"primary\",\"variant\":\"default\",\"data-viewer\":\"simple\"},on:{\"click\":function($event){return _vm.switchToViewer(_vm.$options.SIMPLE_BLOB_VIEWER)}}},[_vm._v(_vm._s(_vm.glFeatures.blobOverflowMenu ? _vm.$options.SIMPLE_BLOB_VIEWER_LABEL : ''))]):_vm._e(),_vm._v(\" \"),(_vm.showViewerToggles)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"js-blob-viewer-switch-btn\",attrs:{\"aria-label\":_vm.$options.RICH_BLOB_VIEWER_TITLE,\"title\":_vm.$options.RICH_BLOB_VIEWER_TITLE,\"selected\":_vm.isRichViewer,\"icon\":_vm.glFeatures.blobOverflowMenu ? '' : _vm.docIcon,\"data-testid\":\"rich-blob-viewer-button\",\"category\":\"primary\",\"variant\":\"default\",\"data-viewer\":\"rich\"},on:{\"click\":function($event){return _vm.switchToViewer(_vm.$options.RICH_BLOB_VIEWER)}}},[_vm._v(_vm._s(_vm.glFeatures.blobOverflowMenu ? _vm.$options.RICH_BLOB_VIEWER_LABEL : ''))]):_vm._e(),_vm._v(\" \"),(_vm.showBlameToggle)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.$options.BLAME_TITLE,\"selected\":_vm.isBlameViewer,\"category\":\"primary\",\"variant\":\"default\",\"data-test-id\":\"blame-toggle\"},on:{\"click\":function($event){return _vm.switchToViewer(_vm.$options.BLAME_VIEWER)}}},[_vm._v(_vm._s(_vm.__('Blame')))]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header.vue?vue&type=script&lang=js\"","\n\n \n \n \n\n \n \n \n \n \n \n\n \n \n\n \n\n \n\n \n\n \n \n \n\n","import { render, staticRenderFns } from \"./blob_header.vue?vue&type=template&id=2399d81e\"\nimport script from \"./blob_header.vue?vue&type=script&lang=js\"\nexport * from \"./blob_header.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { numberToHumanSize } from '~/lib/utils/number_utils';\nimport { __, sprintf } from '~/locale';\n\nexport const BTN_COPY_CONTENTS_TITLE = __('Copy file contents');\nexport const BTN_RAW_TITLE = __('Open raw');\nexport const BTN_DOWNLOAD_TITLE = __('Download');\n\nexport const SIMPLE_BLOB_VIEWER = 'simple';\nexport const SIMPLE_BLOB_VIEWER_TITLE = __('Display source');\nexport const SIMPLE_BLOB_VIEWER_LABEL = __('Code');\n\nexport const RICH_BLOB_VIEWER = 'rich';\nexport const RICH_BLOB_VIEWER_TITLE = __('Display rendered file');\nexport const RICH_BLOB_VIEWER_LABEL = __('Preview');\n\nexport const BLAME_VIEWER = 'blame';\nexport const BLAME_TITLE = __('Display blame info');\n\nexport const BLOB_RENDER_EVENT_LOAD = 'force-content-fetch';\nexport const BLOB_RENDER_EVENT_SHOW_SOURCE = 'force-switch-viewer';\n\nexport const BLOB_RENDER_ERRORS = {\n REASONS: {\n COLLAPSED: {\n id: 'collapsed',\n text: sprintf(__('it is larger than %{limit}'), {\n limit: numberToHumanSize(1048576), // 1MB in bytes\n }),\n },\n TOO_LARGE: {\n id: 'too_large',\n text: sprintf(__('it is larger than %{limit}'), {\n limit: numberToHumanSize(10485760), // 10MB in bytes\n }),\n },\n EXTERNAL: {\n id: 'server_side_but_stored_externally',\n text: {\n lfs: __('it is stored in LFS'),\n build_artifact: __('it is stored as a job artifact'),\n default: __('it is stored externally'),\n },\n },\n },\n OPTIONS: {\n LOAD: {\n id: 'load',\n text: __('load it anyway'),\n conjunction: __('or'),\n href: '?expanded=true&viewer=simple',\n target: '',\n event: BLOB_RENDER_EVENT_LOAD,\n },\n SHOW_SOURCE: {\n id: 'show_source',\n text: __('view the source'),\n conjunction: __('or'),\n href: '#',\n target: '',\n event: BLOB_RENDER_EVENT_SHOW_SOURCE,\n },\n DOWNLOAD: {\n id: 'download',\n text: __('download it'),\n conjunction: '',\n target: '_blank',\n condition: true,\n },\n },\n};\n","const fileExtensionIcons = {\n html: 'html',\n htm: 'html',\n html_vm: 'html',\n asp: 'html',\n jade: 'pug',\n pug: 'pug',\n md: 'markdown',\n markdown: 'markdown',\n mdown: 'markdown',\n mkd: 'markdown',\n mkdn: 'markdown',\n rst: 'markdown',\n blink: 'blink',\n css: 'css',\n scss: 'sass',\n sass: 'sass',\n less: 'less',\n json: 'json',\n yaml: 'yaml',\n yml: 'yaml',\n xml: 'xml',\n plist: 'xml',\n xsd: 'xml',\n dtd: 'xml',\n xsl: 'xml',\n xslt: 'xml',\n resx: 'xml',\n iml: 'xml',\n xquery: 'xml',\n tmLanguage: 'xml',\n manifest: 'xml',\n project: 'xml',\n png: 'image',\n jpeg: 'image',\n jpg: 'image',\n gif: 'image',\n svg: 'image',\n ico: 'image',\n tif: 'image',\n tiff: 'image',\n psd: 'image',\n psb: 'image',\n ami: 'image',\n apx: 'image',\n bmp: 'image',\n bpg: 'image',\n brk: 'image',\n cur: 'image',\n dds: 'image',\n dng: 'image',\n exr: 'image',\n fpx: 'image',\n gbr: 'image',\n img: 'image',\n jbig2: 'image',\n jb2: 'image',\n jng: 'image',\n jxr: 'image',\n pbm: 'image',\n pgf: 'image',\n pic: 'image',\n raw: 'image',\n webp: 'image',\n js: 'javascript',\n cjs: 'javascript',\n ejs: 'javascript',\n esx: 'javascript',\n mjs: 'javascript',\n jsx: 'react',\n tsx: 'react',\n ini: 'settings',\n dlc: 'settings',\n dll: 'settings',\n config: 'settings',\n conf: 'settings',\n properties: 'settings',\n prop: 'settings',\n settings: 'settings',\n option: 'settings',\n props: 'settings',\n toml: 'settings',\n prefs: 'settings',\n ts: 'typescript',\n cts: 'typescript',\n mts: 'typescript',\n marko: 'markojs',\n pdf: 'pdf',\n xlsx: 'table',\n xls: 'table',\n ods: 'table',\n csv: 'table',\n tsv: 'table',\n vscodeignore: 'vscode',\n vsixmanifest: 'vscode',\n vsix: 'vscode',\n suo: 'visualstudio',\n sln: 'visualstudio',\n csproj: 'visualstudio',\n vb: 'visualstudio',\n pdb: 'database',\n sql: 'database',\n pks: 'database',\n pkb: 'database',\n accdb: 'database',\n mdb: 'database',\n sqlite: 'database',\n cs: 'csharp',\n zip: 'zip',\n tar: 'zip',\n gz: 'zip',\n xz: 'zip',\n bzip2: 'zip',\n gzip: 'zip',\n rar: 'zip',\n tgz: 'zip',\n exe: 'exe',\n msi: 'exe',\n java: 'java',\n jar: 'java',\n jsp: 'java',\n c: 'c',\n m: 'c',\n h: 'h',\n cc: 'cpp',\n cpp: 'cpp',\n mm: 'cpp',\n cxx: 'cpp',\n hpp: 'hpp',\n go: 'go',\n py: 'python',\n url: 'url',\n sh: 'console',\n ksh: 'console',\n csh: 'console',\n tcsh: 'console',\n zsh: 'console',\n bash: 'console',\n bat: 'console',\n cmd: 'console',\n ps1: 'powershell',\n psm1: 'powershell',\n psd1: 'powershell',\n ps1xml: 'powershell',\n psc1: 'powershell',\n pssc: 'powershell',\n gradle: 'gradle',\n doc: 'word',\n docx: 'word',\n odt: 'word',\n rtf: 'word',\n cer: 'certificate',\n cert: 'certificate',\n crt: 'certificate',\n pub: 'key',\n key: 'key',\n pem: 'key',\n asc: 'key',\n gpg: 'key',\n woff: 'font',\n woff2: 'font',\n ttf: 'font',\n eot: 'font',\n suit: 'font',\n otf: 'font',\n bmap: 'font',\n fnt: 'font',\n odttf: 'font',\n ttc: 'font',\n font: 'font',\n fonts: 'font',\n sui: 'font',\n ntf: 'font',\n mrf: 'font',\n lib: 'lib',\n bib: 'lib',\n rb: 'ruby',\n erb: 'ruby',\n fs: 'fsharp',\n fsx: 'fsharp',\n fsi: 'fsharp',\n fsproj: 'fsharp',\n swift: 'swift',\n ino: 'arduino',\n dockerignore: 'docker',\n dockerfile: 'docker',\n tex: 'tex',\n cls: 'tex',\n sty: 'tex',\n pptx: 'powerpoint',\n ppt: 'powerpoint',\n pptm: 'powerpoint',\n potx: 'powerpoint',\n pot: 'powerpoint',\n potm: 'powerpoint',\n ppsx: 'powerpoint',\n ppsm: 'powerpoint',\n pps: 'powerpoint',\n ppam: 'powerpoint',\n ppa: 'powerpoint',\n odp: 'powerpoint',\n webm: 'video',\n mkv: 'video',\n flv: 'video',\n vob: 'video',\n ogv: 'video',\n ogg: 'audio',\n gifv: 'video',\n avi: 'video',\n mov: 'video',\n qt: 'video',\n wmv: 'video',\n yuv: 'video',\n rm: 'video',\n rmvb: 'video',\n mp4: 'video',\n m4v: 'video',\n mpg: 'video',\n mp2: 'video',\n mpeg: 'video',\n mpe: 'video',\n mpv: 'video',\n m2v: 'video',\n vdi: 'virtual',\n vbox: 'virtual',\n ics: 'email',\n mp3: 'audio',\n flac: 'audio',\n m4a: 'audio',\n wma: 'audio',\n aiff: 'audio',\n coffee: 'coffee',\n txt: 'document',\n graphql: 'graphql',\n rs: 'rust',\n raml: 'raml',\n xaml: 'xaml',\n hs: 'haskell',\n kt: 'kotlin',\n kts: 'kotlin',\n patch: 'git',\n lua: 'lua',\n clj: 'clojure',\n cljs: 'clojure',\n groovy: 'groovy',\n r: 'r',\n rmd: 'r',\n dart: 'dart',\n as: 'actionscript',\n mxml: 'mxml',\n ahk: 'autohotkey',\n swf: 'flash',\n swc: 'swc',\n cmake: 'cmake',\n asm: 'assembly',\n a51: 'assembly',\n inc: 'assembly',\n nasm: 'assembly',\n s: 'assembly',\n ms: 'assembly',\n agc: 'assembly',\n ags: 'assembly',\n aea: 'assembly',\n argus: 'assembly',\n mitigus: 'assembly',\n binsource: 'assembly',\n vue: 'vue',\n ml: 'ocaml',\n mli: 'ocaml',\n cmx: 'ocaml',\n lock: 'lock',\n hbs: 'handlebars',\n mustache: 'handlebars',\n pl: 'perl',\n pm: 'perl',\n hx: 'haxe',\n pp: 'puppet',\n ex: 'elixir',\n exs: 'elixir',\n ls: 'livescript',\n erl: 'erlang',\n twig: 'twig',\n jl: 'julia',\n elm: 'elm',\n pure: 'purescript',\n tpl: 'smarty',\n styl: 'stylus',\n re: 'reason',\n rei: 'reason',\n cmj: 'bucklescript',\n merlin: 'merlin',\n v: 'verilog',\n vhd: 'verilog',\n sv: 'verilog',\n svh: 'verilog',\n nb: 'mathematica',\n wl: 'wolframlanguage',\n wls: 'wolframlanguage',\n njk: 'nunjucks',\n nunjucks: 'nunjucks',\n robot: 'robot',\n sol: 'solidity',\n au3: 'autoit',\n haml: 'haml',\n yang: 'yang',\n tf: 'terraform',\n tfvars: 'terraform',\n tfstate: 'terraform',\n applescript: 'applescript',\n cake: 'cake',\n feature: 'cucumber',\n nim: 'nim',\n nimble: 'nim',\n apib: 'apiblueprint',\n apiblueprint: 'apiblueprint',\n tag: 'riot',\n vfl: 'vfl',\n kl: 'kl',\n pcss: 'postcss',\n sss: 'postcss',\n todo: 'todo',\n cfml: 'coldfusion',\n cfc: 'coldfusion',\n lucee: 'coldfusion',\n cabal: 'cabal',\n nix: 'nix',\n slim: 'slim',\n http: 'http',\n rest: 'http',\n rql: 'restql',\n restql: 'restql',\n kv: 'kivy',\n graphcool: 'graphcool',\n sbt: 'sbt',\n cr: 'crystal',\n cu: 'cuda',\n cuh: 'cuda',\n log: 'log',\n};\n\nconst twoFileExtensionIcons = {\n 'gradle.kts': 'gradle',\n 'md.rendered': 'markdown',\n 'markdown.rendered': 'markdown',\n 'mdown.rendered': 'markdown',\n 'mkd.rendered': 'markdown',\n 'mkdn.rendered': 'markdown',\n 'YAML-tmLanguage': 'yaml',\n 'sln.dotsettings': 'settings',\n 'sln.dotsettings.user': 'settings',\n 'd.ts': 'typescript-def',\n 'code-workplace': 'vscode',\n '7z': 'zip',\n 'c++': 'cpp',\n 'vbox-prev': 'virtual',\n 'js.map': 'javascript-map',\n 'css.map': 'css-map',\n 'spec.ts': 'test-ts',\n 'test.ts': 'test-ts',\n 'ts.snap': 'test-ts',\n 'spec.tsx': 'test-jsx',\n 'test.tsx': 'test-jsx',\n 'tsx.snap': 'test-jsx',\n 'spec.jsx': 'test-jsx',\n 'test.jsx': 'test-jsx',\n 'jsx.snap': 'test-jsx',\n 'spec.js': 'test-js',\n 'test.js': 'test-js',\n 'js.snap': 'test-js',\n // 'routing.ts': 'angular-routing',\n // 'routing.js': 'angular-routing',\n 'module.ts': 'angular',\n 'module.js': 'angular',\n 'ng-template': 'angular',\n 'component.ts': 'angular-component',\n 'component.js': 'angular-component',\n 'guard.ts': 'angular-guard',\n 'guard.js': 'angular-guard',\n 'service.ts': 'angular-service',\n 'service.js': 'angular-service',\n 'pipe.ts': 'angular-pipe',\n 'pipe.js': 'angular-pipe',\n 'filter.js': 'angular-pipe',\n 'directive.ts': 'angular-directive',\n 'directive.js': 'angular-directive',\n 'resolver.ts': 'angular-resolver',\n 'resolver.js': 'angular-resolver',\n 'tf.json': 'terraform',\n 'blade.php': 'laravel',\n 'inky.php': 'laravel',\n 'reducer.ts': 'ngrx-reducer',\n 'rootReducer.ts': 'ngrx-reducer',\n 'state.ts': 'ngrx-state',\n 'actions.ts': 'ngrx-actions',\n 'effects.ts': 'ngrx-effects',\n 'drone.yml': 'drone',\n};\n\nconst fileNameIcons = {\n '.jscsrc': 'json',\n '.jshintrc': 'json',\n 'tsconfig.json': 'json',\n 'tslint.json': 'json',\n 'composer.lock': 'json',\n '.jsbeautifyrc': 'json',\n '.esformatter': 'json',\n 'cdp.pid': 'json',\n '.htaccess': 'xml',\n '.jshintignore': 'settings',\n '.buildignore': 'settings',\n makefile: 'settings',\n '.mrconfig': 'settings',\n '.yardopts': 'settings',\n 'gradle.properties': 'gradle',\n gradlew: 'gradle',\n 'gradle-wrapper.properties': 'gradle',\n COPYING: 'certificate',\n 'COPYING.LESSER': 'certificate',\n LICENSE: 'certificate',\n LICENCE: 'certificate',\n 'LICENSE.md': 'certificate',\n 'LICENCE.md': 'certificate',\n 'LICENSE.txt': 'certificate',\n 'LICENCE.txt': 'certificate',\n '.gitlab-license': 'certificate',\n dockerfile: 'docker',\n 'docker-compose.yml': 'docker',\n '.mailmap': 'email',\n '.gitignore': 'git',\n '.gitconfig': 'git',\n '.gitattributes': 'git',\n '.gitmodules': 'git',\n '.gitkeep': 'git',\n 'git-history': 'git',\n '.Rhistory': 'r',\n 'cmakelists.txt': 'cmake',\n 'cmakecache.txt': 'cmake',\n 'angular-cli.json': 'angular',\n '.angular-cli.json': 'angular',\n '.vfl': 'vfl',\n '.kl': 'kl',\n 'postcss.config.js': 'postcss',\n '.postcssrc.js': 'postcss',\n 'project.graphcool': 'graphcool',\n 'webpack.js': 'webpack',\n 'webpack.ts': 'webpack',\n 'webpack.base.js': 'webpack',\n 'webpack.base.ts': 'webpack',\n 'webpack.config.js': 'webpack',\n 'webpack.config.ts': 'webpack',\n 'webpack.common.js': 'webpack',\n 'webpack.common.ts': 'webpack',\n 'webpack.config.common.js': 'webpack',\n 'webpack.config.common.ts': 'webpack',\n 'webpack.config.common.babel.js': 'webpack',\n 'webpack.config.common.babel.ts': 'webpack',\n 'webpack.dev.js': 'webpack',\n 'webpack.dev.ts': 'webpack',\n 'webpack.config.dev.js': 'webpack',\n 'webpack.config.dev.ts': 'webpack',\n 'webpack.config.dev.babel.js': 'webpack',\n 'webpack.config.dev.babel.ts': 'webpack',\n 'webpack.prod.js': 'webpack',\n 'webpack.prod.ts': 'webpack',\n 'webpack.server.js': 'webpack',\n 'webpack.server.ts': 'webpack',\n 'webpack.client.js': 'webpack',\n 'webpack.client.ts': 'webpack',\n 'webpack.config.server.js': 'webpack',\n 'webpack.config.server.ts': 'webpack',\n 'webpack.config.client.js': 'webpack',\n 'webpack.config.client.ts': 'webpack',\n 'webpack.config.production.babel.js': 'webpack',\n 'webpack.config.production.babel.ts': 'webpack',\n 'webpack.config.prod.babel.js': 'webpack',\n 'webpack.config.prod.babel.ts': 'webpack',\n 'webpack.config.prod.js': 'webpack',\n 'webpack.config.prod.ts': 'webpack',\n 'webpack.config.production.js': 'webpack',\n 'webpack.config.production.ts': 'webpack',\n 'webpack.config.staging.js': 'webpack',\n 'webpack.config.staging.ts': 'webpack',\n 'webpack.config.babel.js': 'webpack',\n 'webpack.config.babel.ts': 'webpack',\n 'webpack.config.base.babel.js': 'webpack',\n 'webpack.config.base.babel.ts': 'webpack',\n 'webpack.config.base.js': 'webpack',\n 'webpack.config.base.ts': 'webpack',\n 'webpack.config.staging.babel.js': 'webpack',\n 'webpack.config.staging.babel.ts': 'webpack',\n 'webpack.config.coffee': 'webpack',\n 'webpack.config.test.js': 'webpack',\n 'webpack.config.test.ts': 'webpack',\n 'webpack.config.vendor.js': 'webpack',\n 'webpack.config.vendor.ts': 'webpack',\n 'webpack.config.vendor.production.js': 'webpack',\n 'webpack.config.vendor.production.ts': 'webpack',\n 'webpack.test.js': 'webpack',\n 'webpack.test.ts': 'webpack',\n 'webpack.dist.js': 'webpack',\n 'webpack.dist.ts': 'webpack',\n 'webpackfile.js': 'webpack',\n 'webpackfile.ts': 'webpack',\n 'ionic.config.json': 'ionic',\n '.io-config.json': 'ionic',\n 'gulpfile.js': 'gulp',\n 'gulpfile.ts': 'gulp',\n 'gulpfile.babel.js': 'gulp',\n 'package.json': 'nodejs',\n 'package-lock.json': 'nodejs',\n '.nvmrc': 'nodejs',\n '.npmignore': 'npm',\n '.npmrc': 'npm',\n '.yarnrc': 'yarn',\n '.yarnrc.yml': 'yarn',\n 'yarn.lock': 'yarn',\n '.yarnclean': 'yarn',\n '.yarn-integrity': 'yarn',\n 'yarn-error.log': 'yarn',\n 'androidmanifest.xml': 'android',\n '.env': 'tune',\n '.env.example': 'tune',\n '.babelrc': 'babel',\n 'contributing.md': 'contributing',\n 'contributing.md.rendered': 'contributing',\n 'readme.md': 'readme',\n 'readme.md.rendered': 'readme',\n changelog: 'changelog',\n 'changelog.md': 'changelog',\n 'changelog.md.rendered': 'changelog',\n CREDITS: 'credits',\n 'credits.txt': 'credits',\n 'credits.md': 'credits',\n 'credits.md.rendered': 'credits',\n '.flowconfig': 'flow',\n 'favicon.png': 'favicon',\n 'karma.conf.js': 'karma',\n 'karma.conf.ts': 'karma',\n 'karma.conf.coffee': 'karma',\n 'karma.config.js': 'karma',\n 'karma.config.ts': 'karma',\n 'karma-main.js': 'karma',\n 'karma-main.ts': 'karma',\n '.bithoundrc': 'bithound',\n 'appveyor.yml': 'appveyor',\n '.travis.yml': 'travis',\n 'protractor.conf.js': 'protractor',\n 'protractor.conf.ts': 'protractor',\n 'protractor.conf.coffee': 'protractor',\n 'protractor.config.js': 'protractor',\n 'protractor.config.ts': 'protractor',\n 'fuse.js': 'fusebox',\n procfile: 'heroku',\n '.editorconfig': 'editorconfig',\n '.gitlab-ci.yml': 'gitlab',\n '.bowerrc': 'bower',\n 'bower.json': 'bower',\n '.eslintrc.js': 'eslint',\n '.eslintrc.yaml': 'eslint',\n '.eslintrc.yml': 'eslint',\n '.eslintrc.json': 'eslint',\n '.eslintrc': 'eslint',\n '.eslintignore': 'eslint',\n 'code_of_conduct.md': 'conduct',\n 'code_of_conduct.md.rendered': 'conduct',\n '.watchmanconfig': 'watchman',\n 'aurelia.json': 'aurelia',\n 'mocha.opts': 'mocha',\n jenkinsfile: 'jenkins',\n 'firebase.json': 'firebase',\n '.firebaserc': 'firebase',\n Rakefile: 'ruby',\n 'rollup.config.js': 'rollup',\n 'rollup.config.ts': 'rollup',\n 'rollup-config.js': 'rollup',\n 'rollup-config.ts': 'rollup',\n 'rollup.config.prod.js': 'rollup',\n 'rollup.config.prod.ts': 'rollup',\n 'rollup.config.dev.js': 'rollup',\n 'rollup.config.dev.ts': 'rollup',\n 'rollup.config.prod.vendor.js': 'rollup',\n 'rollup.config.prod.vendor.ts': 'rollup',\n '.hhconfig': 'hack',\n '.stylelintrc': 'stylelint',\n 'stylelint.config.js': 'stylelint',\n '.stylelintrc.json': 'stylelint',\n '.stylelintrc.yaml': 'stylelint',\n '.stylelintrc.yml': 'stylelint',\n '.stylelintrc.js': 'stylelint',\n '.stylelintignore': 'stylelint',\n '.codeclimate.yml': 'code-climate',\n '.prettierrc': 'prettier',\n 'prettier.config.js': 'prettier',\n '.prettierrc.js': 'prettier',\n '.prettierrc.json': 'prettier',\n '.prettierrc.yaml': 'prettier',\n '.prettierrc.yml': 'prettier',\n '.prettierignore': 'prettier',\n 'nodemon.json': 'nodemon',\n // '.sonarrc': 'sonar',\n browserslist: 'browserlist',\n '.browserslistrc': 'browserlist',\n '.snyk': 'snyk',\n '.drone.yml': 'drone',\n};\n\nfunction getIconForFile(name) {\n return (\n fileNameIcons[name] ||\n twoFileExtensionIcons[name ? name.split('.').slice(-2).join('.') : ''] ||\n fileExtensionIcons[name ? name.split('.').pop().toLowerCase() : ''] ||\n ''\n );\n}\n\nmodule.exports = {\n fileNameIcons,\n fileExtensionIcons,\n twoFileExtensionIcons,\n getIconForFile,\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',[(_vm.loading)?_c('gl-loading-icon',{attrs:{\"size\":\"sm\",\"inline\":true}}):(_vm.isSymlink)?_c('gl-icon',{attrs:{\"name\":\"symlink\",\"size\":_vm.size}}):(!_vm.folder)?_c('svg',{key:_vm.spriteHref,class:[_vm.iconSizeClass, _vm.cssClasses]},[_c('use',{attrs:{\"href\":_vm.spriteHref}})]):_c('gl-icon',{staticClass:\"folder-icon\",attrs:{\"name\":_vm.folderIconName,\"size\":_vm.size}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./file_icon.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./file_icon.vue?vue&type=script&lang=js\"","\n\n \n \n \n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./file_icon.vue?vue&type=template&id=baba2178\"\nimport script from \"./file_icon.vue?vue&type=script&lang=js\"\nexport * from \"./file_icon.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-disclosure-dropdown',{attrs:{\"category\":\"primary\",\"variant\":\"confirm\",\"placement\":\"bottom-end\",\"block\":\"\",\"toggle-text\":_vm.$options.labels.defaultLabel}},_vm._l((_vm.sections),function({ label, link, testId }){return _c('code-dropdown-item',{key:label,attrs:{\"label\":label,\"link\":link,\"test-id\":`${testId}-button`,\"data-testid\":testId,\"label-class\":\"!gl-text-sm !gl-pt-2\"}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./clone_code_dropdown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./clone_code_dropdown.vue?vue&type=script&lang=js\"","\n\n \n \n \n\n","import { render, staticRenderFns } from \"./clone_code_dropdown.vue?vue&type=template&id=165000a3\"\nimport script from \"./clone_code_dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./clone_code_dropdown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"file-header-content gl-flex gl-items-center gl-leading-1\"},[_vm._t(\"filepath-prepend\"),_vm._v(\" \"),(_vm.fileName)?[_c('file-icon',{attrs:{\"file-name\":_vm.fileName,\"size\":16,\"aria-hidden\":\"true\",\"css-classes\":\"gl-mr-3\"}}),_vm._v(\" \"),_c(_vm.showAsLink ? 'gl-link' : 'strong',_vm._b({tag:\"component\",staticClass:\"file-title-name mr-1 js-blob-header-filepath gl-break-all gl-font-bold\",class:{ '!gl-text-blue-700 hover:gl-cursor-pointer': _vm.showAsLink },attrs:{\"data-testid\":\"file-title-content\"}},'component',_vm.linkHref,false),[_vm._v(_vm._s(_vm.fileName))])]:_vm._e(),_vm._v(\" \"),_c('clipboard-button',{attrs:{\"text\":_vm.blob.path,\"gfm\":_vm.gfmCopyText,\"title\":_vm.__('Copy file path'),\"category\":\"tertiary\",\"css-class\":\"gl-mr-2\"}}),_vm._v(\" \"),(_vm.showBlobSize)?_c('small',{staticClass:\"gl-mr-3\"},[_vm._v(_vm._s(_vm.blobSize))]):_vm._e(),_vm._v(\" \"),(_vm.showLfsBadge)?_c('gl-badge',[_vm._v(_vm._s(_vm.__('LFS')))]):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header_filepath.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blob_header_filepath.vue?vue&type=script&lang=js\"","\n\n \n \n\n \n \n {{ fileName }}\n \n\n \n\n {{ blobSize }}\n\n {{ __('LFS') }}\n \n\n","import { render, staticRenderFns } from \"./blob_header_filepath.vue?vue&type=template&id=e3787d72\"\nimport script from \"./blob_header_filepath.vue?vue&type=script&lang=js\"\nexport * from \"./blob_header_filepath.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('time',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.viewport\",value:({ placement: _vm.tooltipPlacement }),expression:\"{ placement: tooltipPlacement }\",modifiers:{\"viewport\":true}}],class:_vm.cssClass,attrs:{\"title\":_vm.tooltipText,\"datetime\":_vm.time}},[_vm._t(\"default\",function(){return [(_vm.enableTruncation)?[_c('gl-truncate',{attrs:{\"text\":_vm.timeAgo,\"with-tooltip\":\"\"}})]:[_vm._v(_vm._s(_vm.timeAgo))]]},{\"timeAgo\":_vm.timeAgo})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./time_ago_tooltip.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./time_ago_tooltip.vue?vue&type=script&lang=js\"","\n\n {{ timeAgo }}\n\n","import { render, staticRenderFns } from \"./time_ago_tooltip.vue?vue&type=template&id=26d04390\"\nimport script from \"./time_ago_tooltip.vue?vue&type=script&lang=js\"\nexport * from \"./time_ago_tooltip.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default \"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\"","import createEventHub from '~/helpers/event_hub_factory';\n\nexport default createEventHub();\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"blame gl-border-r gl-bg-subtle\"},[_c('div',{staticClass:\"blame-commit !gl-border-none\"},_vm._l((_vm.blameInfo),function(blame,index){return _c('commit-info',{key:index,staticClass:\"gl-absolute gl-flex gl-px-3\",class:{ 'gl-border-t': blame.blameOffset !== '0px' },style:({ top: blame.blameOffset }),attrs:{\"commit\":blame.commit,\"span\":blame.span,\"prev-blame-link\":blame.commitData && blame.commitData.projectBlameLink}})}),1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blame_info.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./blame_info.vue?vue&type=script&lang=js\"","\n\n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./blame_info.vue?vue&type=template&id=3a690a0c\"\nimport script from \"./blame_info.vue?vue&type=script&lang=js\"\nexport * from \"./blame_info.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import $ from 'jquery';\nimport { renderGFM } from '~/behaviors/markdown/render_gfm';\nimport { createAlert } from '~/alert';\nimport { __ } from '~/locale';\nimport {\n REPO_BLOB_LOAD_VIEWER_START,\n REPO_BLOB_LOAD_VIEWER_FINISH,\n REPO_BLOB_LOAD_VIEWER,\n REPO_BLOB_SWITCH_TO_VIEWER_START,\n REPO_BLOB_SWITCH_VIEWER,\n} from '~/performance/constants';\nimport { performanceMarkAndMeasure } from '~/performance/utils';\nimport { fixTitle } from '~/tooltips';\nimport axios from '~/lib/utils/axios_utils';\nimport { handleLocationHash } from '~/lib/utils/common_utils';\nimport eventHub from '~/notes/event_hub';\n\nconst loadRichBlobViewer = (type) => {\n switch (type) {\n case 'notebook':\n return import(/* webpackChunkName: 'notebook_viewer' */ '../notebook_viewer');\n case 'openapi':\n return import(/* webpackChunkName: 'openapi_viewer' */ '../openapi_viewer');\n case 'csv':\n return import(/* webpackChunkName: 'csv_viewer' */ '../csv_viewer');\n case 'pdf':\n return import(/* webpackChunkName: 'pdf_viewer' */ '../pdf_viewer');\n case 'sketch':\n return import(/* webpackChunkName: 'sketch_viewer' */ '../sketch_viewer');\n case 'stl':\n return import(/* webpackChunkName: 'stl_viewer' */ '../stl_viewer');\n default:\n return Promise.resolve();\n }\n};\n\nconst loadViewer = (viewerParam) => {\n const viewer = viewerParam;\n const { url } = viewer.dataset;\n\n if (!url || viewer.dataset.loaded || viewer.dataset.loading) {\n return Promise.resolve(viewer);\n }\n\n viewer.dataset.loading = 'true';\n\n return axios.get(url).then(({ data }) => {\n // eslint-disable-next-line no-unsanitized/property\n viewer.innerHTML = data.html;\n\n window.requestIdleCallback(() => {\n delete viewer.dataset.loading;\n });\n\n return viewer;\n });\n};\n\nexport const initAuxiliaryViewer = () => {\n const auxiliaryViewer = document.querySelector('.blob-viewer[data-type=\"auxiliary\"]');\n if (!auxiliaryViewer) return;\n\n loadViewer(auxiliaryViewer);\n};\n\nexport const handleBlobRichViewer = (viewer, type) => {\n if (!viewer || !type) return;\n\n loadRichBlobViewer(type)\n .then((module) => module?.default(viewer))\n .catch((error) => {\n createAlert({\n message: __('Error loading file viewer.'),\n });\n throw error;\n });\n};\n\nexport class BlobViewer {\n constructor() {\n performanceMarkAndMeasure({\n mark: REPO_BLOB_LOAD_VIEWER_START,\n });\n const viewer = document.querySelector('.blob-viewer[data-type=\"rich\"]');\n const type = viewer?.dataset?.richType;\n initAuxiliaryViewer();\n\n handleBlobRichViewer(viewer, type);\n\n this.initMainViewers();\n }\n\n initMainViewers() {\n this.$fileHolder = $('.file-holder');\n if (!this.$fileHolder.length) return;\n\n this.switcher = document.querySelector('.js-blob-viewer-switcher');\n this.switcherBtns = document.querySelectorAll('.js-blob-viewer-switch-btn');\n this.copySourceBtn = document.querySelector('.js-copy-blob-source-btn');\n this.copySourceBtnTooltip = document.querySelector('.js-copy-blob-source-btn-tooltip');\n\n this.simpleViewer = this.$fileHolder[0].querySelector('.blob-viewer[data-type=\"simple\"]');\n this.richViewer = this.$fileHolder[0].querySelector('.blob-viewer[data-type=\"rich\"]');\n\n this.initBindings();\n\n this.switchToInitialViewer();\n }\n\n switchToInitialViewer() {\n const initialViewer = this.$fileHolder[0].querySelector('.blob-viewer:not(.hidden)');\n let initialViewerName = initialViewer.dataset.type;\n\n if (this.switcher && window.location.hash.indexOf('#L') === 0) {\n initialViewerName = 'simple';\n }\n\n this.switchToViewer(initialViewerName);\n }\n\n initBindings() {\n if (this.switcherBtns.length) {\n Array.from(this.switcherBtns).forEach((el) => {\n el.addEventListener('click', this.switchViewHandler.bind(this));\n });\n }\n\n if (this.copySourceBtn) {\n this.copySourceBtn.addEventListener('click', () => {\n if (this.copySourceBtn.classList.contains('disabled')) return this.copySourceBtn.blur();\n\n return this.switchToViewer('simple');\n });\n }\n }\n\n switchViewHandler(e) {\n const target = e.currentTarget;\n\n e.preventDefault();\n\n this.switchToViewer(target.dataset.viewer);\n }\n\n toggleCopyButtonState() {\n if (!this.copySourceBtn) return;\n if (this.simpleViewer.dataset.loaded) {\n this.copySourceBtnTooltip.setAttribute('title', __('Copy file contents'));\n this.copySourceBtn.classList.remove('disabled');\n } else if (this.activeViewer === this.simpleViewer) {\n this.copySourceBtnTooltip.setAttribute(\n 'title',\n __('Wait for the file to load to copy its contents'),\n );\n this.copySourceBtn.classList.add('disabled');\n } else {\n this.copySourceBtnTooltip.setAttribute(\n 'title',\n __('Switch to the source to copy the file contents'),\n );\n this.copySourceBtn.classList.add('disabled');\n }\n\n fixTitle($(this.copySourceBtnTooltip));\n }\n\n switchToViewer(name) {\n performanceMarkAndMeasure({\n mark: REPO_BLOB_SWITCH_TO_VIEWER_START,\n });\n const newViewer = this.$fileHolder[0].querySelector(`.blob-viewer[data-type='${name}']`);\n if (this.activeViewer === newViewer) return;\n\n const oldButton = document.querySelector('.js-blob-viewer-switch-btn.selected');\n const newButton = document.querySelector(`.js-blob-viewer-switch-btn[data-viewer='${name}']`);\n const oldViewer = this.$fileHolder[0].querySelector(`.blob-viewer:not([data-type='${name}'])`);\n\n if (oldButton) {\n oldButton.classList.remove('selected');\n }\n\n if (newButton) {\n newButton.classList.add('selected');\n newButton.blur();\n }\n\n if (oldViewer) {\n oldViewer.classList.add('hidden');\n }\n\n newViewer.classList.remove('hidden');\n\n this.activeViewer = newViewer;\n\n this.toggleCopyButtonState();\n loadViewer(newViewer)\n .then((viewer) => {\n renderGFM(viewer);\n window.requestIdleCallback(() => {\n this.$fileHolder.trigger('highlight:line');\n handleLocationHash();\n\n // eslint-disable-next-line no-param-reassign\n viewer.dataset.loaded = 'true';\n this.toggleCopyButtonState();\n eventHub.$emit('showBlobInteractionZones', viewer.dataset.path);\n });\n\n performanceMarkAndMeasure({\n mark: REPO_BLOB_LOAD_VIEWER_FINISH,\n measures: [\n {\n name: REPO_BLOB_LOAD_VIEWER,\n start: REPO_BLOB_LOAD_VIEWER_START,\n },\n {\n name: REPO_BLOB_SWITCH_VIEWER,\n start: REPO_BLOB_SWITCH_TO_VIEWER_START,\n },\n ],\n });\n })\n .catch(() =>\n createAlert({\n message: __('Error loading viewer'),\n }),\n );\n }\n}\n","\n\n\n \n\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./table_contents.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./table_contents.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./table_contents.vue?vue&type=template&id=78869efc\"\nimport script from \"./table_contents.vue?vue&type=script&lang=js\"\nexport * from \"./table_contents.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (!_vm.isHidden && _vm.items.length)?_c('gl-disclosure-dropdown',{staticClass:\"!gl-pr-0\",attrs:{\"icon\":\"list-bulleted\",\"items\":_vm.items}}):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./field_view.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./field_view.vue?vue&type=script&lang=js\"","\n\n\n \n\n","import { render, staticRenderFns } from \"./field_view.vue?vue&type=template&id=e2fd8c20\"\nimport script from \"./field_view.vue?vue&type=script&lang=js\"\nexport * from \"./field_view.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { formatNumber, sprintf, __ } from '~/locale';\nimport { BYTES_IN_KIB, THOUSAND, MILLION } from './constants';\n\n/**\n * Utility function that calculates KiB of the given bytes.\n *\n * @param {Number} number bytes\n * @return {Number} KiB\n */\nexport function bytesToKiB(number) {\n return number / BYTES_IN_KIB;\n}\n\n/**\n * Utility function that calculates MiB of the given bytes.\n *\n * @param {Number} number bytes\n * @return {Number} MiB\n */\nexport function bytesToMiB(number) {\n return number / (BYTES_IN_KIB * BYTES_IN_KIB);\n}\n\n/**\n * Utility function that calculates GiB of the given bytes.\n * @param {Number} number\n * @returns {Number}\n */\nexport function bytesToGiB(number) {\n return number / (BYTES_IN_KIB * BYTES_IN_KIB * BYTES_IN_KIB);\n}\n\n/**\n * Formats the bytes in number into a more understandable\n * representation. Returns an array with the first value being the human size\n * and the second value being the label (e.g., [1.5, 'KiB']).\n *\n * @param {number} size\n * @param {number} [digits=2] - The number of digits to appear after the decimal point\n * @param {string} locale\n * @returns {string[]}\n */\nexport function numberToHumanSizeSplit({ size, digits = 2, locale } = {}) {\n const abs = Math.abs(size);\n const digitsOptions = { minimumFractionDigits: digits, maximumFractionDigits: digits };\n const formatNumberWithLocaleAndDigits = (n) => formatNumber(n, digitsOptions, locale);\n\n if (abs < BYTES_IN_KIB) {\n return [size.toString(), __('B')];\n }\n if (abs < BYTES_IN_KIB ** 2) {\n return [formatNumberWithLocaleAndDigits(bytesToKiB(size)), __('KiB')];\n }\n if (abs < BYTES_IN_KIB ** 3) {\n return [formatNumberWithLocaleAndDigits(bytesToMiB(size)), __('MiB')];\n }\n return [formatNumberWithLocaleAndDigits(bytesToGiB(size)), __('GiB')];\n}\n\n/**\n * Port of rails number_to_human_size\n * Formats the bytes in number into a more understandable\n * representation (e.g., giving it 1536 yields 1.5 KiB).\n *\n * @param {number} size\n * @param {number} [digits=2] - The number of digits to appear after the decimal point\n * @param {string} locale\n * @returns {string}\n */\nexport function numberToHumanSize(size, digits = 2, locale) {\n const [humanSize, label] = numberToHumanSizeSplit({ size, digits, locale });\n\n switch (label) {\n case __('B'):\n return sprintf(__('%{size} B'), { size: humanSize });\n case __('KiB'):\n return sprintf(__('%{size} KiB'), { size: humanSize });\n case __('MiB'):\n return sprintf(__('%{size} MiB'), { size: humanSize });\n case __('GiB'):\n return sprintf(__('%{size} GiB'), { size: humanSize });\n default:\n return '';\n }\n}\n\n/**\n * Converts a number to kilos or megas.\n *\n * For example:\n * - 123 becomes 123\n * - 123456 becomes 123.4k\n * - 123456789 becomes 123.4m\n *\n * @param number Number to format\n * @param digits The number of digits to appear after the decimal point\n * @param uppercase Whether to use uppercase suffix (K, M)\n * @return {string} Formatted number\n */\nexport function numberToMetricPrefix(number, uppercase = false) {\n if (number < THOUSAND) {\n return number.toString();\n }\n const digits = 1;\n if (number < MILLION) {\n return `${Number((number / THOUSAND).toFixed(digits))}${uppercase ? 'K' : 'k'}`;\n }\n return `${Number((number / MILLION).toFixed(digits))}${uppercase ? 'M' : 'm'}`;\n}\n/**\n * A simple method that returns the value of a + b\n * It seems unessesary, but when combined with a reducer it\n * adds up all the values in an array.\n *\n * e.g. `[1, 2, 3, 4, 5].reduce(sum) // => 15`\n *\n * @param {Float} a\n * @param {Float} b\n * @example\n * // return 15\n * [1, 2, 3, 4, 5].reduce(sum);\n *\n * // returns 6\n * Object.values([{a: 1, b: 2, c: 3].reduce(sum);\n * @returns {Float} The summed value\n */\nexport const sum = (a = 0, b = 0) => a + b;\n\n/**\n * Checks if the provided number is odd\n * @param {Int} number\n */\nexport const isOdd = (number = 0) => number % 2;\n\n/**\n * Computes the median for a given array.\n * @param {Array} arr An array of numbers\n * @returns {Number} The median of the given array\n */\nexport const median = (arr) => {\n const middle = Math.floor(arr.length / 2);\n const sorted = arr.sort((a, b) => a - b);\n return arr.length % 2 !== 0 ? sorted[middle] : (sorted[middle - 1] + sorted[middle]) / 2;\n};\n\n/**\n * Computes the change from one value to the other as a percentage.\n * @param {Number} firstY\n * @param {Number} lastY\n * @returns {Number}\n */\nexport const changeInPercent = (firstY, lastY) => {\n if (firstY === lastY) {\n return 0;\n }\n\n return Math.round(((lastY - firstY) / Math.abs(firstY)) * 100);\n};\n\n/**\n * Computes and formats the change from one value to the other as a percentage.\n * Prepends the computed percentage with either \"+\" or \"-\" to indicate an in- or decrease and\n * returns a given string if the result is not finite (for example, if the first value is \"0\").\n * @param firstY\n * @param lastY\n * @param nonFiniteResult\n * @returns {String}\n */\nexport const formattedChangeInPercent = (firstY, lastY, { nonFiniteResult = '-' } = {}) => {\n const change = changeInPercent(firstY, lastY);\n\n if (!Number.isFinite(change)) {\n return nonFiniteResult;\n }\n\n return `${change >= 0 ? '+' : ''}${change}%`;\n};\n\n/**\n * Checks whether a value is numerical in nature by converting it using parseInt\n *\n * Example outcomes:\n * - isNumeric(100) = true\n * - isNumeric('100') = true\n * - isNumeric(1.0) = true\n * - isNumeric('1.0') = true\n * - isNumeric('abc100') = false\n * - isNumeric('abc') = false\n * - isNumeric(true) = false\n * - isNumeric(undefined) = false\n * - isNumeric(null) = false\n *\n * @param value\n * @returns {boolean}\n */\nexport const isNumeric = (value) => {\n return !Number.isNaN(parseInt(value, 10));\n};\n\nconst numberRegex = /^[0-9]+$/;\n\n/**\n * Checks whether the value is a positive number or 0, or a string with equivalent value\n *\n * @param value\n * @return {boolean}\n */\nexport const isPositiveInteger = (value) => numberRegex.test(value);\n\n/**\n * Splits a number into an integer and decimal component\n * returns an object with the integer and decimal values extracted\n *\n * @param value\n * @return {Object}\n */\nexport const splitDecimalNumber = (value) => {\n if (isNumeric(value)) {\n const parts = String(value).split('.');\n if (value === 0) return { integer: '0', decimal: '0' };\n\n if (parts.length) {\n return parts.length > 1\n ? { integer: parts[0], decimal: parts[1] }\n : { integer: parts[0], decimal: null };\n }\n }\n return { integer: null, decimal: null };\n};\n\n/**\n * Calculates the number of digits after the decimal place\n *\n * @param num - any numeric value\n * @return number of digits after the decimal (if any)\n */\nexport const countFloatingPointDigits = (num = null) => {\n if (!num || !isNumeric(num)) return 0;\n\n const { decimal } = splitDecimalNumber(num);\n return String(decimal).length;\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-disclosure-dropdown-item',[_c('gl-form-group',{staticClass:\"gl-mb-3 gl-px-3 gl-text-left\",attrs:{\"label\":_vm.label,\"label-class\":_vm.labelClass,\"label-for\":_vm.inputId}},[_c('gl-form-input-group',{attrs:{\"id\":_vm.inputId,\"value\":_vm.link,\"name\":_vm.name,\"data-testid\":_vm.inputId,\"label\":_vm.label,\"readonly\":\"\",\"select-on-click\":\"\"},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"gl-inline-flex\",attrs:{\"title\":_vm.$options.copyURLTooltip,\"aria-label\":_vm.$options.copyURLTooltip,\"data-clipboard-text\":_vm.link,\"data-testid\":_vm.testId,\"icon\":\"copy-to-clipboard\"}})]},proxy:true}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./code_dropdown_item.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./code_dropdown_item.vue?vue&type=script&lang=js\"","\n\n \n \n \n \n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./code_dropdown_item.vue?vue&type=template&id=74fdd5bc\"\nimport script from \"./code_dropdown_item.vue?vue&type=script&lang=js\"\nexport * from \"./code_dropdown_item.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('gl-avatar-link',{staticClass:\"user-avatar-link js-user-link\",attrs:{\"href\":_vm.linkHref,\"data-user-id\":_vm.userId,\"data-username\":_vm.popoverUsername},on:{\"click\":function($event){$event.stopPropagation();}}},[_c('user-avatar-image',{class:_vm.imgCssWrapperClasses,attrs:{\"img-src\":_vm.imgSrc,\"img-alt\":_vm.imgAlt,\"css-classes\":_vm.imgCssClasses,\"size\":_vm.imgSize,\"tooltip-text\":_vm.avatarTooltipText,\"tooltip-placement\":_vm.tooltipPlacement,\"lazy\":_vm.lazy}},[_vm._t(\"default\")],2),_vm._v(\" \"),(_vm.shouldShowUsername)?_c('span',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"gl-ml-1\",attrs:{\"title\":_vm.tooltipText,\"tooltip-placement\":_vm.tooltipPlacement,\"data-testid\":\"user-avatar-link-username\"}},[_vm._v(\"\\n \"+_vm._s(_vm.username)+\"\\n \")]):_vm._e(),_vm._v(\" \"),_vm._t(\"avatar-badge\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_link.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./user_avatar_link.vue?vue&type=script&lang=js\"","\n\n\n \n \n \n \n\n \n {{ username }}\n \n\n \n \n\n","import { render, staticRenderFns } from \"./user_avatar_link.vue?vue&type=template&id=0c9f1264\"\nimport script from \"./user_avatar_link.vue?vue&type=script&lang=js\"\nexport * from \"./user_avatar_link.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"well-segment commit gl-flex gl-w-full !gl-px-5 !gl-py-4\"},[(_vm.commit.author)?_c('user-avatar-link',{staticClass:\"gl-my-2 gl-mr-3\",attrs:{\"link-href\":_vm.commit.author.webPath,\"img-src\":_vm.commit.author.avatarUrl,\"img-alt\":_vm.avatarLinkAltText,\"img-size\":32}}):_c('user-avatar-image',{staticClass:\"gl-my-2 gl-mr-3\",attrs:{\"img-src\":_vm.commit.authorGravatar || _vm.$options.defaultAvatarUrl,\"size\":32}}),_vm._v(\" \"),_c('div',{staticClass:\"commit-detail flex-list gl-flex gl-min-w-0 gl-grow\"},[_c('div',{staticClass:\"commit-content gl-inline-flex gl-w-full gl-flex-wrap gl-items-baseline\",attrs:{\"data-testid\":\"commit-content\"}},[_c('div',{staticClass:\"gl-inline-flex gl-basis-full gl-items-center gl-gap-x-3\"},[_c('gl-link',{directives:[{name:\"safe-html\",rawName:\"v-safe-html:[$options.safeHtmlConfig]\",value:(_vm.commit.titleHtml),expression:\"commit.titleHtml\",arg:_vm.$options.safeHtmlConfig}],staticClass:\"commit-row-message item-title gl-line-clamp-1 gl-whitespace-normal !gl-break-all\",class:{ 'gl-italic': !_vm.commit.message },attrs:{\"href\":_vm.commit.webPath}}),_vm._v(\" \"),(_vm.commit.descriptionHtml)?_c('gl-button',{directives:[{name:\"gl-tooltip\",rawName:\"v-gl-tooltip\"}],staticClass:\"!gl-ml-0\",class:{ open: _vm.showDescription },attrs:{\"title\":_vm.$options.i18n.toggleCommitDescription,\"aria-label\":_vm.$options.i18n.toggleCommitDescription,\"selected\":_vm.showDescription,\"icon\":\"ellipsis_h\"},on:{\"click\":_vm.toggleShowDescription}}):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"committer gl-basis-full gl-truncate gl-text-sm\",class:{ 'gl-inline-flex': _vm.truncateAuthorName },attrs:{\"data-testid\":\"committer\"}},[(_vm.commit.author)?_c('gl-link',{staticClass:\"commit-author-link js-user-link\",class:{ 'gl-inline-block gl-truncate': _vm.truncateAuthorName },attrs:{\"href\":_vm.commit.author.webPath}},[_vm._v(\"\\n \"+_vm._s(_vm.commit.author.name))]):[_vm._v(\"\\n \"+_vm._s(_vm.commit.authorName)+\"\\n \")],_vm._v(\"\\n \"+_vm._s(_vm.$options.i18n.authored)+\"\\n \"),_c('timeago-tooltip',{attrs:{\"time\":_vm.commit.authoredDate,\"tooltip-placement\":\"bottom\"}})],2),_vm._v(\" \"),(_vm.commitDescription)?_c('pre',{directives:[{name:\"safe-html\",rawName:\"v-safe-html:[$options.safeHtmlConfig]\",value:(_vm.commitDescription),expression:\"commitDescription\",arg:_vm.$options.safeHtmlConfig}],staticClass:\"commit-row-description gl-mb-3 gl-whitespace-pre-wrap\",class:{ '!gl-block': _vm.showDescription }}):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"gl-grow\"}),_vm._v(\" \"),_vm._t(\"default\")],2),_vm._v(\" \"),(_vm.prevBlameLink)?_c('div',{directives:[{name:\"safe-html\",rawName:\"v-safe-html:[$options.safeHtmlConfig]\",value:(_vm.prevBlameLink),expression:\"prevBlameLink\",arg:_vm.$options.safeHtmlConfig}],attrs:{\"data-event-tracking\":\"click_previous_blame_on_blob_page\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./commit_info.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/babel-loader/lib/index.js??ref--13-1!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./commit_info.vue?vue&type=script&lang=js\"","\n\n\n \n \n \n \n \n \n \n \n \n \n \n {{ commit.author.name }}\n \n {{ commit.authorName }}\n \n {{ $options.i18n.authored }}\n \n \n \n \n \n \n \n \n \n\n","import { render, staticRenderFns } from \"./commit_info.vue?vue&type=template&id=00696b7d\"\nimport script from \"./commit_info.vue?vue&type=script&lang=js\"\nexport * from \"./commit_info.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","const BLAME_INFO_CLASSLIST = ['gl-border-t', 'gl-border-gray-500'];\nconst PADDING_TOP_SMALL = '!gl-pt-3';\nconst PADDING_BOTTOM_LARGE = '!gl-pb-6';\nconst PADDING_BOTTOM_SMALL = '!gl-pb-3';\nconst VIEWER_SELECTOR = '.file-holder .blob-viewer';\n\nconst findLineNumberElement = (lineNumber) => document.getElementById(`L${lineNumber}`);\n\nconst findLineContentElement = (lineNumber) => document.getElementById(`LC${lineNumber}`);\n\nexport const calculateBlameOffset = (lineNumber) => {\n if (lineNumber === 1) return '0px';\n const blobViewerOffset = document.querySelector(VIEWER_SELECTOR)?.getBoundingClientRect().top;\n const lineContentOffset = findLineContentElement(lineNumber)?.getBoundingClientRect().top;\n return `${lineContentOffset - blobViewerOffset}px`;\n};\n\nexport const shouldRender = (data, index) => {\n const prevBlame = data[index - 1];\n const currBlame = data[index];\n const identicalSha = currBlame.commit.sha === prevBlame?.commit?.sha;\n const lineNumberSmaller = currBlame.lineno < prevBlame?.lineno;\n\n return !identicalSha || lineNumberSmaller;\n};\n\nexport const toggleBlameClasses = (blameData, isVisible) => {\n /**\n * Adds/removes classes to line number/content elements to match the line with the blame info\n * */\n const method = isVisible ? 'add' : 'remove';\n blameData.forEach(({ lineno, span }, index) => {\n if (!shouldRender(blameData, index)) return;\n\n const lineNumberEl = findLineNumberElement(lineno)?.parentElement;\n const lineContentEl = findLineContentElement(lineno);\n const lineNumberSpanEl = findLineNumberElement(lineno + span - 1)?.parentElement;\n const lineContentSpanEl = findLineContentElement(lineno + span - 1);\n\n lineNumberEl?.classList[method](PADDING_TOP_SMALL);\n lineContentEl?.classList[method](PADDING_TOP_SMALL);\n\n if (lineno !== 1) {\n lineNumberEl?.classList[method](...BLAME_INFO_CLASSLIST);\n lineContentEl?.classList[method](...BLAME_INFO_CLASSLIST);\n }\n\n if (span === 1) {\n lineNumberSpanEl?.classList[method](PADDING_BOTTOM_LARGE);\n lineContentSpanEl?.classList[method](PADDING_BOTTOM_LARGE);\n } else {\n lineNumberSpanEl?.classList[method](PADDING_BOTTOM_SMALL);\n lineContentSpanEl?.classList[method](PADDING_BOTTOM_SMALL);\n }\n });\n};\n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"getRef\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"ref\"},\"arguments\":[],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"client\"},\"arguments\":[]}]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"escapedRef\"},\"arguments\":[],\"directives\":[{\"kind\":\"Directive\",\"name\":{\"kind\":\"Name\",\"value\":\"client\"},\"arguments\":[]}]}]}}],\"loc\":{\"start\":0,\"end\":52}};\n doc.loc.source = {\"body\":\"query getRef {\\n ref @client\\n escapedRef @client\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"getRef\"] = oneQuery(doc, \"getRef\");\n \n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"getUserInfo\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"currentUser\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"gitpodEnabled\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"preferencesGitpodPath\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"profileEnableGitpodPath\"},\"arguments\":[],\"directives\":[]}]}}]}}],\"loc\":{\"start\":0,\"end\":121}};\n doc.loc.source = {\"body\":\"query getUserInfo {\\n currentUser {\\n id\\n gitpodEnabled\\n preferencesGitpodPath\\n profileEnableGitpodPath\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"getUserInfo\"] = oneQuery(doc, \"getUserInfo\");\n \n","import refQuery from '../queries/ref.query.graphql';\n\nexport default {\n apollo: {\n ref: {\n query: refQuery,\n manual: true,\n result({ data, loading }) {\n if (data && !loading) {\n this.ref = data.ref;\n this.escapedRef = data.escapedRef;\n }\n },\n },\n },\n data() {\n return {\n ref: '',\n escapedRef: '',\n };\n },\n};\n","import GlLink from '../link/link';\nimport __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';\n\nvar script = {\n name: 'AvatarLink',\n components: {\n GlLink\n }\n};\n\n/* script */\nconst __vue_script__ = script;\n\n/* template */\nvar __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-link',_vm._g(_vm._b({staticClass:\"gl-avatar-link\"},'gl-link',_vm.$attrs,false),_vm.$listeners),[_vm._t(\"default\")],2)};\nvar __vue_staticRenderFns__ = [];\n\n /* style */\n const __vue_inject_styles__ = undefined;\n /* scoped */\n const __vue_scope_id__ = undefined;\n /* module identifier */\n const __vue_module_identifier__ = undefined;\n /* functional template */\n const __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n const __vue_component__ = __vue_normalize__(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"getBlameData\"},\"variableDefinitions\":[{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"ID\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"filePath\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fromLine\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Int\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"toLine\"}},\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"Int\"}},\"directives\":[]},{\"kind\":\"VariableDefinition\",\"variable\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"ref\"}},\"type\":{\"kind\":\"NonNullType\",\"type\":{\"kind\":\"NamedType\",\"name\":{\"kind\":\"Name\",\"value\":\"String\"}}},\"directives\":[]}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"project\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fullPath\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"repository\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"blobs\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"ref\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"ref\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"paths\"},\"value\":{\"kind\":\"ListValue\",\"values\":[{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"filePath\"}}]}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"nodes\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"blame\"},\"arguments\":[{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"fromLine\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"fromLine\"}}},{\"kind\":\"Argument\",\"name\":{\"kind\":\"Name\",\"value\":\"toLine\"},\"value\":{\"kind\":\"Variable\",\"name\":{\"kind\":\"Name\",\"value\":\"toLine\"}}}],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"firstLine\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"groups\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"lineno\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"span\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"commit\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"id\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"authorName\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"titleHtml\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"message\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"authoredDate\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"authorGravatar\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"webPath\"},\"arguments\":[],\"directives\":[]},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"author\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"FragmentSpread\",\"name\":{\"kind\":\"Name\",\"value\":\"Author\"},\"directives\":[]}]}},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"sha\"},\"arguments\":[],\"directives\":[]}]}},{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"commitData\"},\"arguments\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"projectBlameLink\"},\"arguments\":[],\"directives\":[]}]}}]}}]}}]}}]}}]}}]}}]}}],\"loc\":{\"start\":0,\"end\":884}};\n doc.loc.source = {\"body\":\"#import \\\"~/graphql_shared/fragments/author.fragment.graphql\\\"\\n\\nquery getBlameData(\\n $fullPath: ID!\\n $filePath: String!\\n $fromLine: Int\\n $toLine: Int\\n $ref: String!\\n) {\\n project(fullPath: $fullPath) {\\n id\\n repository {\\n blobs(ref: $ref, paths: [$filePath]) {\\n nodes {\\n id\\n blame(fromLine: $fromLine, toLine: $toLine) {\\n firstLine\\n groups {\\n lineno\\n span\\n commit {\\n id\\n authorName\\n titleHtml\\n message\\n authoredDate\\n authorGravatar\\n webPath\\n author {\\n ...Author\\n }\\n sha\\n }\\n commitData {\\n projectBlameLink\\n }\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n doc.definitions = doc.definitions.concat(unique(require(\"~/graphql_shared/fragments/author.fragment.graphql\").definitions));\n\n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"getBlameData\"] = oneQuery(doc, \"getBlameData\");\n \n","import { Mousetrap } from '~/lib/mousetrap';\nimport 'mousetrap/plugins/pause/mousetrap-pause';\n\nconst shorcutsDisabledKey = 'shortcutsDisabled';\n\nexport const shouldDisableShortcuts = () => !window.gon.keyboard_shortcuts_enabled;\n\nexport function enableShortcuts() {\n localStorage.setItem(shorcutsDisabledKey, false);\n Mousetrap.unpause();\n}\n\nexport function disableShortcuts() {\n localStorage.setItem(shorcutsDisabledKey, true);\n Mousetrap.pause();\n}\n","\n var doc = {\"kind\":\"Document\",\"definitions\":[{\"kind\":\"OperationDefinition\",\"operation\":\"query\",\"name\":{\"kind\":\"Name\",\"value\":\"getApplicationInfo\"},\"variableDefinitions\":[],\"directives\":[],\"selectionSet\":{\"kind\":\"SelectionSet\",\"selections\":[{\"kind\":\"Field\",\"name\":{\"kind\":\"Name\",\"value\":\"gitpodEnabled\"},\"arguments\":[],\"directives\":[]}]}}],\"loc\":{\"start\":0,\"end\":45}};\n doc.loc.source = {\"body\":\"query getApplicationInfo {\\n gitpodEnabled\\n}\\n\",\"name\":\"GraphQL request\",\"locationOffset\":{\"line\":1,\"column\":1}};\n \n\n var names = {};\n function unique(defs) {\n return defs.filter(\n function(def) {\n if (def.kind !== 'FragmentDefinition') return true;\n var name = def.name.value\n if (names[name]) {\n return false;\n } else {\n names[name] = true;\n return true;\n }\n }\n )\n }\n \n\n // Collect any fragment/type references from a node, adding them to the refs Set\n function collectFragmentReferences(node, refs) {\n if (node.kind === \"FragmentSpread\") {\n refs.add(node.name.value);\n } else if (node.kind === \"VariableDefinition\") {\n var type = node.type;\n if (type.kind === \"NamedType\") {\n refs.add(type.name.value);\n }\n }\n\n if (node.selectionSet) {\n node.selectionSet.selections.forEach(function(selection) {\n collectFragmentReferences(selection, refs);\n });\n }\n\n if (node.variableDefinitions) {\n node.variableDefinitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n\n if (node.definitions) {\n node.definitions.forEach(function(def) {\n collectFragmentReferences(def, refs);\n });\n }\n }\n\n var definitionRefs = {};\n (function extractReferences() {\n doc.definitions.forEach(function(def) {\n if (def.name) {\n var refs = new Set();\n collectFragmentReferences(def, refs);\n definitionRefs[def.name.value] = refs;\n }\n });\n })();\n\n function findOperation(doc, name) {\n for (var i = 0; i < doc.definitions.length; i++) {\n var element = doc.definitions[i];\n if (element.name && element.name.value == name) {\n return element;\n }\n }\n }\n\n function oneQuery(doc, operationName) {\n // Copy the DocumentNode, but clear out the definitions\n var newDoc = {\n kind: doc.kind,\n definitions: [findOperation(doc, operationName)]\n };\n if (doc.hasOwnProperty(\"loc\")) {\n newDoc.loc = doc.loc;\n }\n\n // Now, for the operation we're running, find any fragments referenced by\n // it or the fragments it references\n var opRefs = definitionRefs[operationName] || new Set();\n var allRefs = new Set();\n var newRefs = new Set();\n\n // IE 11 doesn't support \"new Set(iterable)\", so we add the members of opRefs to newRefs one by one\n opRefs.forEach(function(refName) {\n newRefs.add(refName);\n });\n\n while (newRefs.size > 0) {\n var prevRefs = newRefs;\n newRefs = new Set();\n\n prevRefs.forEach(function(refName) {\n if (!allRefs.has(refName)) {\n allRefs.add(refName);\n var childRefs = definitionRefs[refName] || new Set();\n childRefs.forEach(function(childRef) {\n newRefs.add(childRef);\n });\n }\n });\n }\n\n allRefs.forEach(function(refName) {\n var op = findOperation(doc, refName);\n if (op) {\n newDoc.definitions.push(op);\n }\n });\n\n return newDoc;\n }\n \n module.exports = doc;\n \n module.exports[\"getApplicationInfo\"] = oneQuery(doc, \"getApplicationInfo\");\n \n"],"sourceRoot":""}