{"version":3,"sources":["webpack:////build/source/node_modules/fuzzaldrin-plus/lib/scorer.js","webpack:////build/source/node_modules/fuzzaldrin-plus/lib/fuzzaldrin.js","webpack:////build/source/node_modules/fuzzaldrin-plus/lib/query.js","webpack:///./lib/utils/secret_detection_patterns.js","webpack:///./lib/utils/secret_detection.js","webpack:////build/source/node_modules/fuzzaldrin-plus/lib/pathScorer.js","webpack:////build/source/node_modules/fuzzaldrin-plus/lib/matcher.js","webpack:////build/source/node_modules/fuzzaldrin-plus/lib/filter.js"],"names":["AcronymResult","computeScore","emptyAcronymResult","isAcronymFullWord","isMatch","isSeparator","isWordEnd","isWordStart","scoreAcronyms","scoreCharacter","scoreConsecutives","scoreExact","scoreExactMatch","scorePattern","scorePosition","scoreSize","exports","score","string","query","options","preparedQuery","string_lw","allowErrors","core_lw","core_up","toLowerCase","Math","ceil","subject","query_lw","query_up","i","j","m","n","qj_lw","qj_up","si","length","charCodeAt","subject_lw","acro","acro_score","align","csc_diag","csc_row","csc_score","csc_should_rebuild","miss_budget","miss_left","pos","record_miss","score_diag","score_row","score_up","si_lw","start","sz","count","indexOf","Array","charCodes","max","curr_s","prev_s","len","next_s","c","sc","abs","quality","sameCase","end","bonus","posBonus","startOfWord","k","mi","nj","pos2","this","fullWord","sepCount","sumPos","nbAcronymInQuery","call","Query","defaultPathSeparator","filter","matcher","parseOptions","pathScorer","preparedQueryCache","scorer","process","platform","module","candidates","usePathScoring","match","_results","_i","_ref","push","apply","wrap","prepareQuery","useExtensionBonus","pathSeparator","optCharRegEx","coreChars","countDir","getCharCodes","getExtension","opt_char_re","truncatedUpperCase","_arg","_ref1","core","depth","ext","replace","str","upper","_len","toUpperCase","sensitiveDataPatterns","_window$gon","patPrefix","window","gon","pat_prefix","name","regex","CONTENT_TYPE","COMMENT","DESCRIPTION","defaultContentType","documentationHref","helpPagePath","i18n","title","n__","promptMessage","primaryBtnText","__","secondaryBtnText","helpString","formatMessage","findings","contentType","sprintf","map","patternName","matchedString","redactedString","inputString","prefix","substring","suffix","redactLength","min","repeat","redactString","_escape","join","detectAndConfirmSensitiveTokens","content","sensitiveTokens","message","rule","RegExp","matches","forEach","containsSensitiveToken","async","modalHtmlMessage","confirmed","confirmAction","primaryBtnVariant","hideCancel","InternalEvents","trackEvent","label","property","value","confirmSensitiveAction","Promise","resolve","getExtensionScore","scorePath","fullPathScore","alpha","basePathScore","basePos","extAdjust","fileLength","lastIndexOf","slice","path","substr","candidate","startPos","endPos","maxDepth","matched","basenameMatch","computeMatch","mergeMatches","baseMatches","matchIndex","matchPos","matchPositions","output","strPos","tagClass","tagClose","tagOpen","a","b","ai","bj","out","offset","backtrack","move","trace","reverse","pluckCandidates","sortCandidates","bKey","key","maxInners","maxResults","scoreProvider","scoredCandidates","spotLeft","sort"],"mappings":"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","file":"commons-pages.groups.roadmap.show-pages.groups.wikis-pages.groups.wikis.diff-pages.groups.wikis.git_-f86ba45d.f9e6ce47.chunk.js","sourcesContent":["(function() {\n var AcronymResult, computeScore, emptyAcronymResult, isAcronymFullWord, isMatch, isSeparator, isWordEnd, isWordStart, miss_coeff, pos_bonus, scoreAcronyms, scoreCharacter, scoreConsecutives, scoreExact, scoreExactMatch, scorePattern, scorePosition, scoreSize, tau_size, wm;\n\n wm = 150;\n\n pos_bonus = 20;\n\n tau_size = 150;\n\n miss_coeff = 0.75;\n\n exports.score = function(string, query, options) {\n var allowErrors, preparedQuery, score, string_lw;\n preparedQuery = options.preparedQuery, allowErrors = options.allowErrors;\n if (!(allowErrors || isMatch(string, preparedQuery.core_lw, preparedQuery.core_up))) {\n return 0;\n }\n string_lw = string.toLowerCase();\n score = computeScore(string, string_lw, preparedQuery);\n return Math.ceil(score);\n };\n\n exports.isMatch = isMatch = function(subject, query_lw, query_up) {\n var i, j, m, n, qj_lw, qj_up, si;\n m = subject.length;\n n = query_lw.length;\n if (!m || n > m) {\n return false;\n }\n i = -1;\n j = -1;\n while (++j < n) {\n qj_lw = query_lw.charCodeAt(j);\n qj_up = query_up.charCodeAt(j);\n while (++i < m) {\n si = subject.charCodeAt(i);\n if (si === qj_lw || si === qj_up) {\n break;\n }\n }\n if (i === m) {\n return false;\n }\n }\n return true;\n };\n\n exports.computeScore = computeScore = function(subject, subject_lw, preparedQuery) {\n var acro, acro_score, align, csc_diag, csc_row, csc_score, csc_should_rebuild, i, j, m, miss_budget, miss_left, n, pos, query, query_lw, record_miss, score, score_diag, score_row, score_up, si_lw, start, sz;\n query = preparedQuery.query;\n query_lw = preparedQuery.query_lw;\n m = subject.length;\n n = query.length;\n acro = scoreAcronyms(subject, subject_lw, query, query_lw);\n acro_score = acro.score;\n if (acro.count === n) {\n return scoreExact(n, m, acro_score, acro.pos);\n }\n pos = subject_lw.indexOf(query_lw);\n if (pos > -1) {\n return scoreExactMatch(subject, subject_lw, query, query_lw, pos, n, m);\n }\n score_row = new Array(n);\n csc_row = new Array(n);\n sz = scoreSize(n, m);\n miss_budget = Math.ceil(miss_coeff * n) + 5;\n miss_left = miss_budget;\n csc_should_rebuild = true;\n j = -1;\n while (++j < n) {\n score_row[j] = 0;\n csc_row[j] = 0;\n }\n i = -1;\n while (++i < m) {\n si_lw = subject_lw[i];\n if (!si_lw.charCodeAt(0) in preparedQuery.charCodes) {\n if (csc_should_rebuild) {\n j = -1;\n while (++j < n) {\n csc_row[j] = 0;\n }\n csc_should_rebuild = false;\n }\n continue;\n }\n score = 0;\n score_diag = 0;\n csc_diag = 0;\n record_miss = true;\n csc_should_rebuild = true;\n j = -1;\n while (++j < n) {\n score_up = score_row[j];\n if (score_up > score) {\n score = score_up;\n }\n csc_score = 0;\n if (query_lw[j] === si_lw) {\n start = isWordStart(i, subject, subject_lw);\n csc_score = csc_diag > 0 ? csc_diag : scoreConsecutives(subject, subject_lw, query, query_lw, i, j, start);\n align = score_diag + scoreCharacter(i, j, start, acro_score, csc_score);\n if (align > score) {\n score = align;\n miss_left = miss_budget;\n } else {\n if (record_miss && --miss_left <= 0) {\n return Math.max(score, score_row[n - 1]) * sz;\n }\n record_miss = false;\n }\n }\n score_diag = score_up;\n csc_diag = csc_row[j];\n csc_row[j] = csc_score;\n score_row[j] = score;\n }\n }\n score = score_row[n - 1];\n return score * sz;\n };\n\n exports.isWordStart = isWordStart = function(pos, subject, subject_lw) {\n var curr_s, prev_s;\n if (pos === 0) {\n return true;\n }\n curr_s = subject[pos];\n prev_s = subject[pos - 1];\n return isSeparator(prev_s) || (curr_s !== subject_lw[pos] && prev_s === subject_lw[pos - 1]);\n };\n\n exports.isWordEnd = isWordEnd = function(pos, subject, subject_lw, len) {\n var curr_s, next_s;\n if (pos === len - 1) {\n return true;\n }\n curr_s = subject[pos];\n next_s = subject[pos + 1];\n return isSeparator(next_s) || (curr_s === subject_lw[pos] && next_s !== subject_lw[pos + 1]);\n };\n\n isSeparator = function(c) {\n return c === ' ' || c === '.' || c === '-' || c === '_' || c === '/' || c === '\\\\';\n };\n\n scorePosition = function(pos) {\n var sc;\n if (pos < pos_bonus) {\n sc = pos_bonus - pos;\n return 100 + sc * sc;\n } else {\n return Math.max(100 + pos_bonus - pos, 0);\n }\n };\n\n exports.scoreSize = scoreSize = function(n, m) {\n return tau_size / (tau_size + Math.abs(m - n));\n };\n\n scoreExact = function(n, m, quality, pos) {\n return 2 * n * (wm * quality + scorePosition(pos)) * scoreSize(n, m);\n };\n\n exports.scorePattern = scorePattern = function(count, len, sameCase, start, end) {\n var bonus, sz;\n sz = count;\n bonus = 6;\n if (sameCase === count) {\n bonus += 2;\n }\n if (start) {\n bonus += 3;\n }\n if (end) {\n bonus += 1;\n }\n if (count === len) {\n if (start) {\n if (sameCase === len) {\n sz += 2;\n } else {\n sz += 1;\n }\n }\n if (end) {\n bonus += 1;\n }\n }\n return sameCase + sz * (sz + bonus);\n };\n\n exports.scoreCharacter = scoreCharacter = function(i, j, start, acro_score, csc_score) {\n var posBonus;\n posBonus = scorePosition(i);\n if (start) {\n return posBonus + wm * ((acro_score > csc_score ? acro_score : csc_score) + 10);\n }\n return posBonus + wm * csc_score;\n };\n\n exports.scoreConsecutives = scoreConsecutives = function(subject, subject_lw, query, query_lw, i, j, startOfWord) {\n var k, m, mi, n, nj, sameCase, sz;\n m = subject.length;\n n = query.length;\n mi = m - i;\n nj = n - j;\n k = mi < nj ? mi : nj;\n sameCase = 0;\n sz = 0;\n if (query[j] === subject[i]) {\n sameCase++;\n }\n while (++sz < k && query_lw[++j] === subject_lw[++i]) {\n if (query[j] === subject[i]) {\n sameCase++;\n }\n }\n if (sz < k) {\n i--;\n }\n if (sz === 1) {\n return 1 + 2 * sameCase;\n }\n return scorePattern(sz, n, sameCase, startOfWord, isWordEnd(i, subject, subject_lw, m));\n };\n\n exports.scoreExactMatch = scoreExactMatch = function(subject, subject_lw, query, query_lw, pos, n, m) {\n var end, i, pos2, sameCase, start;\n start = isWordStart(pos, subject, subject_lw);\n if (!start) {\n pos2 = subject_lw.indexOf(query_lw, pos + 1);\n if (pos2 > -1) {\n start = isWordStart(pos2, subject, subject_lw);\n if (start) {\n pos = pos2;\n }\n }\n }\n i = -1;\n sameCase = 0;\n while (++i < n) {\n if (query[pos + i] === subject[i]) {\n sameCase++;\n }\n }\n end = isWordEnd(pos + n - 1, subject, subject_lw, m);\n return scoreExact(n, m, scorePattern(n, n, sameCase, start, end), pos);\n };\n\n AcronymResult = (function() {\n function AcronymResult(score, pos, count) {\n this.score = score;\n this.pos = pos;\n this.count = count;\n }\n\n return AcronymResult;\n\n })();\n\n emptyAcronymResult = new AcronymResult(0, 0.1, 0);\n\n exports.scoreAcronyms = scoreAcronyms = function(subject, subject_lw, query, query_lw) {\n var count, fullWord, i, j, m, n, qj_lw, sameCase, score, sepCount, sumPos;\n m = subject.length;\n n = query.length;\n if (!(m > 1 && n > 1)) {\n return emptyAcronymResult;\n }\n count = 0;\n sepCount = 0;\n sumPos = 0;\n sameCase = 0;\n i = -1;\n j = -1;\n while (++j < n) {\n qj_lw = query_lw[j];\n if (isSeparator(qj_lw)) {\n i = subject_lw.indexOf(qj_lw, i + 1);\n if (i > -1) {\n sepCount++;\n continue;\n } else {\n break;\n }\n }\n while (++i < m) {\n if (qj_lw === subject_lw[i] && isWordStart(i, subject, subject_lw)) {\n if (query[j] === subject[i]) {\n sameCase++;\n }\n sumPos += i;\n count++;\n break;\n }\n }\n if (i === m) {\n break;\n }\n }\n if (count < 2) {\n return emptyAcronymResult;\n }\n fullWord = count === n ? isAcronymFullWord(subject, subject_lw, query, count) : false;\n score = scorePattern(count, n, sameCase, true, fullWord);\n return new AcronymResult(score, sumPos / count, count + sepCount);\n };\n\n isAcronymFullWord = function(subject, subject_lw, query, nbAcronymInQuery) {\n var count, i, m, n;\n m = subject.length;\n n = query.length;\n count = 0;\n if (m > 12 * n) {\n return false;\n }\n i = -1;\n while (++i < m) {\n if (isWordStart(i, subject, subject_lw) && ++count > nbAcronymInQuery) {\n return false;\n }\n }\n return true;\n };\n\n}).call(this);\n","(function() {\n var Query, defaultPathSeparator, filter, matcher, parseOptions, pathScorer, preparedQueryCache, scorer;\n\n filter = require('./filter');\n\n matcher = require('./matcher');\n\n scorer = require('./scorer');\n\n pathScorer = require('./pathScorer');\n\n Query = require('./query');\n\n preparedQueryCache = null;\n\n defaultPathSeparator = (typeof process !== \"undefined\" && process !== null ? process.platform : void 0) === \"win32\" ? '\\\\' : '/';\n\n module.exports = {\n filter: function(candidates, query, options) {\n if (options == null) {\n options = {};\n }\n if (!((query != null ? query.length : void 0) && (candidates != null ? candidates.length : void 0))) {\n return [];\n }\n options = parseOptions(options, query);\n return filter(candidates, query, options);\n },\n score: function(string, query, options) {\n if (options == null) {\n options = {};\n }\n if (!((string != null ? string.length : void 0) && (query != null ? query.length : void 0))) {\n return 0;\n }\n options = parseOptions(options, query);\n if (options.usePathScoring) {\n return pathScorer.score(string, query, options);\n } else {\n return scorer.score(string, query, options);\n }\n },\n match: function(string, query, options) {\n var _i, _ref, _results;\n if (options == null) {\n options = {};\n }\n if (!string) {\n return [];\n }\n if (!query) {\n return [];\n }\n if (string === query) {\n return (function() {\n _results = [];\n for (var _i = 0, _ref = string.length; 0 <= _ref ? _i < _ref : _i > _ref; 0 <= _ref ? _i++ : _i--){ _results.push(_i); }\n return _results;\n }).apply(this);\n }\n options = parseOptions(options, query);\n return matcher.match(string, query, options);\n },\n wrap: function(string, query, options) {\n if (options == null) {\n options = {};\n }\n if (!string) {\n return [];\n }\n if (!query) {\n return [];\n }\n options = parseOptions(options, query);\n return matcher.wrap(string, query, options);\n },\n prepareQuery: function(query, options) {\n if (options == null) {\n options = {};\n }\n options = parseOptions(options, query);\n return options.preparedQuery;\n }\n };\n\n parseOptions = function(options, query) {\n if (options.allowErrors == null) {\n options.allowErrors = false;\n }\n if (options.usePathScoring == null) {\n options.usePathScoring = true;\n }\n if (options.useExtensionBonus == null) {\n options.useExtensionBonus = false;\n }\n if (options.pathSeparator == null) {\n options.pathSeparator = defaultPathSeparator;\n }\n if (options.optCharRegEx == null) {\n options.optCharRegEx = null;\n }\n if (options.wrap == null) {\n options.wrap = null;\n }\n if (options.preparedQuery == null) {\n options.preparedQuery = preparedQueryCache && preparedQueryCache.query === query ? preparedQueryCache : (preparedQueryCache = new Query(query, options));\n }\n return options;\n };\n\n}).call(this);\n","(function() {\n var Query, coreChars, countDir, getCharCodes, getExtension, opt_char_re, truncatedUpperCase, _ref;\n\n _ref = require(\"./pathScorer\"), countDir = _ref.countDir, getExtension = _ref.getExtension;\n\n module.exports = Query = (function() {\n function Query(query, _arg) {\n var optCharRegEx, pathSeparator, _ref1;\n _ref1 = _arg != null ? _arg : {}, optCharRegEx = _ref1.optCharRegEx, pathSeparator = _ref1.pathSeparator;\n if (!(query && query.length)) {\n return null;\n }\n this.query = query;\n this.query_lw = query.toLowerCase();\n this.core = coreChars(query, optCharRegEx);\n this.core_lw = this.core.toLowerCase();\n this.core_up = truncatedUpperCase(this.core);\n this.depth = countDir(query, query.length, pathSeparator);\n this.ext = getExtension(this.query_lw);\n this.charCodes = getCharCodes(this.query_lw);\n }\n\n return Query;\n\n })();\n\n opt_char_re = /[ _\\-:\\/\\\\]/g;\n\n coreChars = function(query, optCharRegEx) {\n if (optCharRegEx == null) {\n optCharRegEx = opt_char_re;\n }\n return query.replace(optCharRegEx, '');\n };\n\n truncatedUpperCase = function(str) {\n var char, upper, _i, _len;\n upper = \"\";\n for (_i = 0, _len = str.length; _i < _len; _i++) {\n char = str[_i];\n upper += char.toUpperCase()[0];\n }\n return upper;\n };\n\n getCharCodes = function(str) {\n var charCodes, i, len;\n len = str.length;\n i = -1;\n charCodes = [];\n while (++i < len) {\n charCodes[str.charCodeAt(i)] = true;\n }\n return charCodes;\n };\n\n}).call(this);\n","/* eslint-disable @gitlab/require-i18n-strings */\nconst sensitiveDataPatterns = () => {\n const patPrefix = window.gon?.pat_prefix || 'glpat-';\n\n return [\n {\n name: 'GitLab personal access token',\n regex: `${patPrefix}[0-9a-zA-Z_-]{20}`,\n },\n {\n name: 'GitLab personal access token (routable)',\n regex: `${patPrefix}(?<base64_payload>[0-9a-zA-Z_-]{27,300})\\\\.(?<base64_payload_length>[0-9a-z]{2})(?<crc32>[0-9a-z]{7})`,\n },\n {\n name: 'Feed Token',\n regex: 'feed_token=[0-9a-zA-Z_-]{20}|glft-[0-9a-zA-Z_-]{20}|glft-[a-h0-9]+-[0-9]+_',\n },\n {\n name: 'GitLab OAuth Application Secret',\n regex: `gloas-[0-9a-zA-Z_-]{64}`,\n },\n {\n name: 'GitLab Deploy Token',\n regex: `gldt-[0-9a-zA-Z_-]{20}`,\n },\n {\n name: 'GitLab SCIM OAuth Access Token',\n regex: `glsoat-[0-9a-zA-Z_-]{20}`,\n },\n {\n name: 'GitLab CI Build (Job) Token',\n regex: `glcbt-[0-9a-zA-Z]{1,5}_[0-9a-zA-Z_-]{20}`,\n },\n {\n name: 'GitLab Feature Flags Client Token',\n regex: `glffct-[0-9a-zA-Z_-]{20}`,\n },\n {\n name: 'GitLab Runner Token',\n regex: 'glrt-[0-9a-zA-Z_-]{20}',\n },\n {\n name: 'GitLab Incoming Mail Token',\n regex: 'glimt-[0-9a-zA-Z_-]{25}',\n },\n {\n name: 'GitLab Agent for Kubernetes Token',\n regex: 'glagent-[0-9a-zA-Z_-]{50}',\n },\n {\n name: 'GitLab Pipeline Trigger Token',\n regex: 'glptt-[0-9a-zA-Z_-]{40}',\n },\n {\n name: 'Anthropic key',\n regex: 'sk-ant-[a-z]{3}\\\\d{2}-[A-Za-z0-9-_]{86}-[A-Za-z0-9-_]{8}',\n },\n ];\n};\n\nexport default sensitiveDataPatterns;\n","import { escape } from 'lodash';\nimport { confirmAction } from '~/lib/utils/confirm_via_gl_modal/confirm_via_gl_modal';\nimport { helpPagePath } from '~/helpers/help_page_helper';\nimport { __, n__, sprintf } from '~/locale';\nimport { InternalEvents } from '~/tracking';\nimport sensitiveDataPatterns from './secret_detection_patterns';\n\nconst CONTENT_TYPE = {\n COMMENT: 'comment',\n DESCRIPTION: 'description',\n};\n\nconst defaultContentType = CONTENT_TYPE.COMMENT;\n\nconst documentationHref = helpPagePath('user/application_security/secret_detection/client/index');\n\nexport const SHOW_CLIENT_SIDE_SECRET_DETECTION_WARNING =\n 'show_client_side_secret_detection_warning';\n\nconst i18n = {\n title: (count) =>\n n__(\n 'SecretDetection|Warning: Potential secret detected',\n 'SecretDetection|Warning: Potential secrets detected',\n count,\n ),\n promptMessage: (count) =>\n n__(\n 'SecretDetection|This %{contentType} appears to have the following secret in it. Are you sure you want to add this %{contentType}?',\n 'SecretDetection|This %{contentType} appears to have the following secrets in it. Are you sure you want to add this %{contentType}?',\n count,\n ),\n primaryBtnText: __('Add %{contentType}'),\n secondaryBtnText: __('Edit %{contentType}'),\n helpString: __('Why am I seeing this warning?'),\n};\n\nconst redactString = (inputString) => {\n if (inputString.length <= 9) return inputString;\n\n const prefix = inputString.substring(0, 5); // Keep the first 5 characters\n const suffix = inputString.substring(inputString.length - 4); // Keep the last 4 characters\n const redactLength = Math.min(inputString.length - prefix.length - suffix.length, 22);\n\n return `${prefix}${'*'.repeat(redactLength)}${suffix}`;\n};\n\nconst formatMessage = (findings, contentType) => {\n const header = sprintf(i18n.promptMessage(findings.length), { contentType });\n\n const matchedPatterns = findings.map(({ patternName, matchedString }) => {\n const redactedString = redactString(matchedString);\n return `<li>${escape(patternName)}: ${escape(redactedString)}</li>`;\n });\n\n const message = `\n ${header}\n <p><ul>\n ${matchedPatterns.join('')}\n </ul>\n <a href=\"${documentationHref}\" target=\"_blank\" rel=\"noopener noreferrer\">\n ${i18n.helpString}\n </a>\n `;\n\n return message;\n};\n\nconst containsSensitiveToken = (message) => {\n if (!message || typeof message !== 'string') {\n return null;\n }\n const findings = [];\n\n for (const rule of sensitiveDataPatterns()) {\n const regex = new RegExp(rule.regex, 'gi');\n const matches = message.match(regex);\n\n if (matches) {\n matches.forEach((match) => {\n findings.push({\n patternName: rule.name,\n matchedString: match,\n });\n });\n }\n }\n\n return findings.length > 0 ? findings : false;\n};\n\nconst confirmSensitiveAction = async (findings = [], contentType = defaultContentType) => {\n const title = i18n.title(findings.length);\n const modalHtmlMessage = formatMessage(findings, contentType);\n const primaryBtnText = sprintf(i18n.primaryBtnText, { contentType });\n const secondaryBtnText = sprintf(i18n.secondaryBtnText, { contentType });\n\n const confirmed = await confirmAction('', {\n title,\n modalHtmlMessage,\n primaryBtnVariant: 'danger',\n primaryBtnText,\n secondaryBtnText,\n hideCancel: true,\n });\n InternalEvents.trackEvent(SHOW_CLIENT_SIDE_SECRET_DETECTION_WARNING, {\n label: contentType,\n property: findings[0].patternName,\n value: confirmed ? 1 : 0,\n });\n return confirmed;\n};\n\n/**\n * Determines if the provided content contains sensitive patterns and confirms with the user when found.\n * @param {object} params - Parameters for detection and confirmation.\n * @param {string} params.content - The content to be checked for sensitive patterns.\n * @param {string} params.contentType - Type of content being checked.\n * @returns {Promise<boolean>} A Promise that resolves to:\n * - true if no sensitive patterns are found.\n * - true if sensitive patterns are found and the user chooses to proceed with them.\n * - false if sensitive patterns are found and the user chooses to update the content.\n */\nconst detectAndConfirmSensitiveTokens = ({ content, contentType }) => {\n const sensitiveTokens = containsSensitiveToken(content);\n if (!sensitiveTokens) {\n return Promise.resolve(true);\n }\n return confirmSensitiveAction(sensitiveTokens, contentType);\n};\n\nexport { detectAndConfirmSensitiveTokens, CONTENT_TYPE };\n","(function() {\n var computeScore, countDir, file_coeff, getExtension, getExtensionScore, isMatch, scorePath, scoreSize, tau_depth, _ref;\n\n _ref = require('./scorer'), isMatch = _ref.isMatch, computeScore = _ref.computeScore, scoreSize = _ref.scoreSize;\n\n tau_depth = 20;\n\n file_coeff = 2.5;\n\n exports.score = function(string, query, options) {\n var allowErrors, preparedQuery, score, string_lw;\n preparedQuery = options.preparedQuery, allowErrors = options.allowErrors;\n if (!(allowErrors || isMatch(string, preparedQuery.core_lw, preparedQuery.core_up))) {\n return 0;\n }\n string_lw = string.toLowerCase();\n score = computeScore(string, string_lw, preparedQuery);\n score = scorePath(string, string_lw, score, options);\n return Math.ceil(score);\n };\n\n scorePath = function(subject, subject_lw, fullPathScore, options) {\n var alpha, basePathScore, basePos, depth, end, extAdjust, fileLength, pathSeparator, preparedQuery, useExtensionBonus;\n if (fullPathScore === 0) {\n return 0;\n }\n preparedQuery = options.preparedQuery, useExtensionBonus = options.useExtensionBonus, pathSeparator = options.pathSeparator;\n end = subject.length - 1;\n while (subject[end] === pathSeparator) {\n end--;\n }\n basePos = subject.lastIndexOf(pathSeparator, end);\n fileLength = end - basePos;\n extAdjust = 1.0;\n if (useExtensionBonus) {\n extAdjust += getExtensionScore(subject_lw, preparedQuery.ext, basePos, end, 2);\n fullPathScore *= extAdjust;\n }\n if (basePos === -1) {\n return fullPathScore;\n }\n depth = preparedQuery.depth;\n while (basePos > -1 && depth-- > 0) {\n basePos = subject.lastIndexOf(pathSeparator, basePos - 1);\n }\n basePathScore = basePos === -1 ? fullPathScore : extAdjust * computeScore(subject.slice(basePos + 1, end + 1), subject_lw.slice(basePos + 1, end + 1), preparedQuery);\n alpha = 0.5 * tau_depth / (tau_depth + countDir(subject, end + 1, pathSeparator));\n return alpha * basePathScore + (1 - alpha) * fullPathScore * scoreSize(0, file_coeff * fileLength);\n };\n\n exports.countDir = countDir = function(path, end, pathSeparator) {\n var count, i;\n if (end < 1) {\n return 0;\n }\n count = 0;\n i = -1;\n while (++i < end && path[i] === pathSeparator) {\n continue;\n }\n while (++i < end) {\n if (path[i] === pathSeparator) {\n count++;\n while (++i < end && path[i] === pathSeparator) {\n continue;\n }\n }\n }\n return count;\n };\n\n exports.getExtension = getExtension = function(str) {\n var pos;\n pos = str.lastIndexOf(\".\");\n if (pos < 0) {\n return \"\";\n } else {\n return str.substr(pos + 1);\n }\n };\n\n getExtensionScore = function(candidate, ext, startPos, endPos, maxDepth) {\n var m, matched, n, pos;\n if (!ext.length) {\n return 0;\n }\n pos = candidate.lastIndexOf(\".\", endPos);\n if (!(pos > startPos)) {\n return 0;\n }\n n = ext.length;\n m = endPos - pos;\n if (m < n) {\n n = m;\n m = ext.length;\n }\n pos++;\n matched = -1;\n while (++matched < n) {\n if (candidate[pos + matched] !== ext[matched]) {\n break;\n }\n }\n if (matched === 0 && maxDepth > 0) {\n return 0.9 * getExtensionScore(candidate, ext, startPos, pos - 2, maxDepth - 1);\n }\n return matched / m;\n };\n\n}).call(this);\n","(function() {\n var basenameMatch, computeMatch, isMatch, isWordStart, match, mergeMatches, scoreAcronyms, scoreCharacter, scoreConsecutives, _ref;\n\n _ref = require('./scorer'), isMatch = _ref.isMatch, isWordStart = _ref.isWordStart, scoreConsecutives = _ref.scoreConsecutives, scoreCharacter = _ref.scoreCharacter, scoreAcronyms = _ref.scoreAcronyms;\n\n exports.match = match = function(string, query, options) {\n var allowErrors, baseMatches, matches, pathSeparator, preparedQuery, string_lw;\n allowErrors = options.allowErrors, preparedQuery = options.preparedQuery, pathSeparator = options.pathSeparator;\n if (!(allowErrors || isMatch(string, preparedQuery.core_lw, preparedQuery.core_up))) {\n return [];\n }\n string_lw = string.toLowerCase();\n matches = computeMatch(string, string_lw, preparedQuery);\n if (matches.length === 0) {\n return matches;\n }\n if (string.indexOf(pathSeparator) > -1) {\n baseMatches = basenameMatch(string, string_lw, preparedQuery, pathSeparator);\n matches = mergeMatches(matches, baseMatches);\n }\n return matches;\n };\n\n exports.wrap = function(string, query, options) {\n var matchIndex, matchPos, matchPositions, output, strPos, tagClass, tagClose, tagOpen, _ref1;\n if ((options.wrap != null)) {\n _ref1 = options.wrap, tagClass = _ref1.tagClass, tagOpen = _ref1.tagOpen, tagClose = _ref1.tagClose;\n }\n if (tagClass == null) {\n tagClass = 'highlight';\n }\n if (tagOpen == null) {\n tagOpen = '<strong class=\"' + tagClass + '\">';\n }\n if (tagClose == null) {\n tagClose = '</strong>';\n }\n if (string === query) {\n return tagOpen + string + tagClose;\n }\n matchPositions = match(string, query, options);\n if (matchPositions.length === 0) {\n return string;\n }\n output = '';\n matchIndex = -1;\n strPos = 0;\n while (++matchIndex < matchPositions.length) {\n matchPos = matchPositions[matchIndex];\n if (matchPos > strPos) {\n output += string.substring(strPos, matchPos);\n strPos = matchPos;\n }\n while (++matchIndex < matchPositions.length) {\n if (matchPositions[matchIndex] === matchPos + 1) {\n matchPos++;\n } else {\n matchIndex--;\n break;\n }\n }\n matchPos++;\n if (matchPos > strPos) {\n output += tagOpen;\n output += string.substring(strPos, matchPos);\n output += tagClose;\n strPos = matchPos;\n }\n }\n if (strPos <= string.length - 1) {\n output += string.substring(strPos);\n }\n return output;\n };\n\n basenameMatch = function(subject, subject_lw, preparedQuery, pathSeparator) {\n var basePos, depth, end;\n end = subject.length - 1;\n while (subject[end] === pathSeparator) {\n end--;\n }\n basePos = subject.lastIndexOf(pathSeparator, end);\n if (basePos === -1) {\n return [];\n }\n depth = preparedQuery.depth;\n while (depth-- > 0) {\n basePos = subject.lastIndexOf(pathSeparator, basePos - 1);\n if (basePos === -1) {\n return [];\n }\n }\n basePos++;\n end++;\n return computeMatch(subject.slice(basePos, end), subject_lw.slice(basePos, end), preparedQuery, basePos);\n };\n\n mergeMatches = function(a, b) {\n var ai, bj, i, j, m, n, out;\n m = a.length;\n n = b.length;\n if (n === 0) {\n return a.slice();\n }\n if (m === 0) {\n return b.slice();\n }\n i = -1;\n j = 0;\n bj = b[j];\n out = [];\n while (++i < m) {\n ai = a[i];\n while (bj <= ai && ++j < n) {\n if (bj < ai) {\n out.push(bj);\n }\n bj = b[j];\n }\n out.push(ai);\n }\n while (j < n) {\n out.push(b[j++]);\n }\n return out;\n };\n\n computeMatch = function(subject, subject_lw, preparedQuery, offset) {\n var DIAGONAL, LEFT, STOP, UP, acro_score, align, backtrack, csc_diag, csc_row, csc_score, i, j, m, matches, move, n, pos, query, query_lw, score, score_diag, score_row, score_up, si_lw, start, trace;\n if (offset == null) {\n offset = 0;\n }\n query = preparedQuery.query;\n query_lw = preparedQuery.query_lw;\n m = subject.length;\n n = query.length;\n acro_score = scoreAcronyms(subject, subject_lw, query, query_lw).score;\n score_row = new Array(n);\n csc_row = new Array(n);\n STOP = 0;\n UP = 1;\n LEFT = 2;\n DIAGONAL = 3;\n trace = new Array(m * n);\n pos = -1;\n j = -1;\n while (++j < n) {\n score_row[j] = 0;\n csc_row[j] = 0;\n }\n i = -1;\n while (++i < m) {\n score = 0;\n score_up = 0;\n csc_diag = 0;\n si_lw = subject_lw[i];\n j = -1;\n while (++j < n) {\n csc_score = 0;\n align = 0;\n score_diag = score_up;\n if (query_lw[j] === si_lw) {\n start = isWordStart(i, subject, subject_lw);\n csc_score = csc_diag > 0 ? csc_diag : scoreConsecutives(subject, subject_lw, query, query_lw, i, j, start);\n align = score_diag + scoreCharacter(i, j, start, acro_score, csc_score);\n }\n score_up = score_row[j];\n csc_diag = csc_row[j];\n if (score > score_up) {\n move = LEFT;\n } else {\n score = score_up;\n move = UP;\n }\n if (align > score) {\n score = align;\n move = DIAGONAL;\n } else {\n csc_score = 0;\n }\n score_row[j] = score;\n csc_row[j] = csc_score;\n trace[++pos] = score > 0 ? move : STOP;\n }\n }\n i = m - 1;\n j = n - 1;\n pos = i * n + j;\n backtrack = true;\n matches = [];\n while (backtrack && i >= 0 && j >= 0) {\n switch (trace[pos]) {\n case UP:\n i--;\n pos -= n;\n break;\n case LEFT:\n j--;\n pos--;\n break;\n case DIAGONAL:\n matches.push(i + offset);\n j--;\n i--;\n pos -= n + 1;\n break;\n default:\n backtrack = false;\n }\n }\n matches.reverse();\n return matches;\n };\n\n}).call(this);\n","(function() {\n var Query, pathScorer, pluckCandidates, scorer, sortCandidates;\n\n scorer = require('./scorer');\n\n pathScorer = require('./pathScorer');\n\n Query = require('./query');\n\n pluckCandidates = function(a) {\n return a.candidate;\n };\n\n sortCandidates = function(a, b) {\n return b.score - a.score;\n };\n\n module.exports = function(candidates, query, options) {\n var bKey, candidate, key, maxInners, maxResults, score, scoreProvider, scoredCandidates, spotLeft, string, usePathScoring, _i, _len;\n scoredCandidates = [];\n key = options.key, maxResults = options.maxResults, maxInners = options.maxInners, usePathScoring = options.usePathScoring;\n spotLeft = (maxInners != null) && maxInners > 0 ? maxInners : candidates.length + 1;\n bKey = key != null;\n scoreProvider = usePathScoring ? pathScorer : scorer;\n for (_i = 0, _len = candidates.length; _i < _len; _i++) {\n candidate = candidates[_i];\n string = bKey ? candidate[key] : candidate;\n if (!string) {\n continue;\n }\n score = scoreProvider.score(string, query, options);\n if (score > 0) {\n scoredCandidates.push({\n candidate: candidate,\n score: score\n });\n if (!--spotLeft) {\n break;\n }\n }\n }\n scoredCandidates.sort(sortCandidates);\n candidates = scoredCandidates.map(pluckCandidates);\n if (maxResults != null) {\n candidates = candidates.slice(0, maxResults);\n }\n return candidates;\n };\n\n}).call(this);\n"],"sourceRoot":""}