1/******/ (() => { // webpackBootstrap 2/******/ "use strict"; 3/******/ // The require scope 4/******/ var __webpack_require__ = {}; 5/******/ 6/************************************************************************/ 7/******/ /* webpack/runtime/define property getters */ 8/******/ (() => { 9/******/ // define getter functions for harmony exports 10/******/ __webpack_require__.d = (exports, definition) => { 11/******/ for(var key in definition) { 12/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { 13/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); 14/******/ } 15/******/ } 16/******/ }; 17/******/ })(); 18/******/ 19/******/ /* webpack/runtime/hasOwnProperty shorthand */ 20/******/ (() => { 21/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) 22/******/ })(); 23/******/ 24/******/ /* webpack/runtime/make namespace object */ 25/******/ (() => { 26/******/ // define __esModule on exports 27/******/ __webpack_require__.r = (exports) => { 28/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { 29/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); 30/******/ } 31/******/ Object.defineProperty(exports, '__esModule', { value: true }); 32/******/ }; 33/******/ })(); 34/******/ 35/************************************************************************/ 36var __webpack_exports__ = {}; 37__webpack_require__.r(__webpack_exports__); 38/* harmony export */ __webpack_require__.d(__webpack_exports__, { 39/* harmony export */ autop: () => (/* binding */ autop), 40/* harmony export */ removep: () => (/* binding */ removep) 41/* harmony export */ }); 42const htmlSplitRegex = (() => { 43 const comments = "!(?:-(?!->)[^\\-]*)*(?:-->)?"; 44 const cdata = "!\\[CDATA\\[[^\\]]*(?:](?!]>)[^\\]]*)*?(?:]]>)?"; 45 const escaped = "(?=!--|!\\[CDATA\\[)((?=!-)" + // If yes, which type? 46 comments + "|" + cdata + ")"; 47 const regex = "(<(" + // Conditional expression follows. 48 escaped + // Find end of escaped element. 49 "|[^>]*>?))"; 50 return new RegExp(regex); 51})(); 52function htmlSplit(input) { 53 const parts = []; 54 let workingInput = input; 55 let match; 56 while (match = workingInput.match(htmlSplitRegex)) { 57 const index = match.index; 58 parts.push(workingInput.slice(0, index)); 59 parts.push(match[0]); 60 workingInput = workingInput.slice(index + match[0].length); 61 } 62 if (workingInput.length) { 63 parts.push(workingInput); 64 } 65 return parts; 66} 67function replaceInHtmlTags(haystack, replacePairs) { 68 const textArr = htmlSplit(haystack); 69 let changed = false; 70 const needles = Object.keys(replacePairs); 71 for (let i = 1; i < textArr.length; i += 2) { 72 for (let j = 0; j < needles.length; j++) { 73 const needle = needles[j]; 74 if (-1 !== textArr[i].indexOf(needle)) { 75 textArr[i] = textArr[i].replace( 76 new RegExp(needle, "g"), 77 replacePairs[needle] 78 ); 79 changed = true; 80 break; 81 } 82 } 83 } 84 if (changed) { 85 haystack = textArr.join(""); 86 } 87 return haystack; 88} 89function autop(text, br = true) { 90 const preTags = []; 91 if (text.trim() === "") { 92 return ""; 93 } 94 text = text + "\n"; 95 if (text.indexOf("<pre") !== -1) { 96 const textParts = text.split("</pre>"); 97 const lastText = textParts.pop(); 98 text = ""; 99 for (let i = 0; i < textParts.length; i++) { 100 const textPart = textParts[i]; 101 const start = textPart.indexOf("<pre"); 102 if (start === -1) { 103 text += textPart; 104 continue; 105 } 106 const name = "<pre wp-pre-tag-" + i + "></pre>"; 107 preTags.push([name, textPart.substr(start) + "</pre>"]); 108 text += textPart.substr(0, start) + name; 109 } 110 text += lastText; 111 } 112 text = text.replace(/<br\s*\/?>\s*<br\s*\/?>/g, "\n\n"); 113 const allBlocks = "(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|form|map|area|blockquote|address|math|style|p|h[1-6]|hr|fieldset|legend|section|article|aside|hgroup|header|footer|nav|figure|figcaption|details|menu|summary)"; 114 text = text.replace( 115 new RegExp("(<" + allBlocks + "[\\s/>])", "g"), 116 "\n\n$1" 117 ); 118 text = text.replace( 119 new RegExp("(</" + allBlocks + ">)", "g"), 120 "$1\n\n" 121 ); 122 text = text.replace(/\r\n|\r/g, "\n"); 123 text = replaceInHtmlTags(text, { "\n": " <!-- wpnl --> " }); 124 if (text.indexOf("<option") !== -1) { 125 text = text.replace(/\s*<option/g, "<option"); 126 text = text.replace(/<\/option>\s*/g, "</option>"); 127 } 128 if (text.indexOf("</object>") !== -1) { 129 text = text.replace(/(<object[^>]*>)\s*/g, "$1"); 130 text = text.replace(/\s*<\/object>/g, "</object>"); 131 text = text.replace(/\s*(<\/?(?:param|embed)[^>]*>)\s*/g, "$1"); 132 } 133 if (text.indexOf("<source") !== -1 || text.indexOf("<track") !== -1) { 134 text = text.replace(/([<\[](?:audio|video)[^>\]]*[>\]])\s*/g, "$1"); 135 text = text.replace(/\s*([<\[]\/(?:audio|video)[>\]])/g, "$1"); 136 text = text.replace(/\s*(<(?:source|track)[^>]*>)\s*/g, "$1"); 137 } 138 if (text.indexOf("<figcaption") !== -1) { 139 text = text.replace(/\s*(<figcaption[^>]*>)/, "$1"); 140 text = text.replace(/<\/figcaption>\s*/, "</figcaption>"); 141 } 142 text = text.replace(/\n\n+/g, "\n\n");
143 const texts = text.split(/\n\s*\n/).filter(Boolean); 144 text = ""; 145 texts.forEach((textPiece) => { 146 text += "<p>" + textPiece.replace(/^\n*|\n*$/g, "") + "</p>\n"; 147 }); 148 text = text.replace(/<p>\s*<\/p>/g, ""); 149 text = text.replace( 150 /<p>([^<]+)<\/(div|address|form)>/g, 151 "<p>$1</p></$2>" 152 ); 153 text = text.replace( 154 new RegExp("<p>\\s*(</?" + allBlocks + "[^>]*>)\\s*</p>", "g"), 155 "$1" 156 ); 157 text = text.replace(/<p>(<li.+?)<\/p>/g, "$1"); 158 text = text.replace(/<p><blockquote([^>]*)>/gi, "<blockquote$1><p>"); 159 text = text.replace(/<\/blockquote><\/p>/g, "</p></blockquote>"); 160 text = text.replace( 161 new RegExp("<p>\\s*(</?" + allBlocks + "[^>]*>)", "g"), 162 "$1" 163 ); 164 text = text.replace( 165 new RegExp("(</?" + allBlocks + "[^>]*>)\\s*</p>", "g"), 166 "$1" 167 ); 168 if (br) { 169 text = text.replace( 170 /<(script|style).*?<\/\\1>/g, 171 (match) => match[0].replace(/\n/g, "<WPPreserveNewline />") 172 ); 173 text = text.replace(/<br>|<br\/>/g, "<br />"); 174 text = text.replace( 175 /(<br \/>)?\s*\n/g, 176 (a, b) => b ? a : "<br />\n" 177 ); 178 text = text.replace(/<WPPreserveNewline \/>/g, "\n"); 179 } 180 text = text.replace( 181 new RegExp("(</?" + allBlocks + "[^>]*>)\\s*<br />", "g"), 182 "$1" 183 ); 184 text = text.replace( 185 /<br \/>(\s*<\/?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)[^>]*>)/g, 186 "$1" 187 ); 188 text = text.replace(/\n<\/p>$/g, "</p>"); 189 preTags.forEach((preTag) => { 190 const [name, original] = preTag; 191 text = text.replace(name, original); 192 }); 193 if (-1 !== text.indexOf("<!-- wpnl -->")) { 194 text = text.replace(/\s?<!-- wpnl -->\s?/g, "\n"); 195 } 196 return text; 197} 198function removep(html) { 199 const blocklist = "blockquote|ul|ol|li|dl|dt|dd|table|thead|tbody|tfoot|tr|th|td|h[1-6]|fieldset|figure"; 200 const blocklist1 = blocklist + "|div|p"; 201 const blocklist2 = blocklist + "|pre"; 202 const preserve = []; 203 let preserveLinebreaks = false; 204 let preserveBr = false; 205 if (!html) { 206 return ""; 207 } 208 if (html.indexOf("<script") !== -1 || html.indexOf("<style") !== -1) { 209 html = html.replace( 210 /<(script|style)[^>]*>[\s\S]*?<\/\1>/g, 211 (match) => { 212 preserve.push(match); 213 return "<wp-preserve>"; 214 } 215 ); 216 } 217 if (html.indexOf("<pre") !== -1) { 218 preserveLinebreaks = true; 219 html = html.replace(/<pre[^>]*>[\s\S]+?<\/pre>/g, (a) => { 220 a = a.replace(/<br ?\/?>(\r\n|\n)?/g, "<wp-line-break>"); 221 a = a.replace(/<\/?p( [^>]*)?>(\r\n|\n)?/g, "<wp-line-break>"); 222 return a.replace(/\r?\n/g, "<wp-line-break>"); 223 }); 224 } 225 if (html.indexOf("[caption") !== -1) { 226 preserveBr = true; 227 html = html.replace(/\[caption[\s\S]+?\[\/caption\]/g, (a) => { 228 return a.replace(/<br([^>]*)>/g, "<wp-temp-br$1>").replace(/[\r\n\t]+/, ""); 229 }); 230 } 231 html = html.replace( 232 new RegExp("\\s*</(" + blocklist1 + ")>\\s*", "g"), 233 "</$1>\n" 234 ); 235 html = html.replace( 236 new RegExp("\\s*<((?:" + blocklist1 + ")(?: [^>]*)?)>", "g"), 237 "\n<$1>" 238 ); 239 html = html.replace(/(<p [^>]+>[\s\S]*?)<\/p>/g, "$1</p#>"); 240 html = html.replace(/<div( [^>]*)?>\s*<p>/gi, "<div$1>\n\n"); 241 html = html.replace(/\s*<p>/gi, ""); 242 html = html.replace(/\s*<\/p>\s*/gi, "\n\n"); 243 html = html.replace(/\n[\s\u00a0]+\n/g, "\n\n"); 244 html = html.replace(/(\s*)<br ?\/?>\s*/gi, (_, space) => { 245 if (space && space.indexOf("\n") !== -1) { 246 return "\n\n"; 247 } 248 return "\n"; 249 }); 250 html = html.replace(/\s*<div/g, "\n<div"); 251 html = html.replace(/<\/div>\s*/g, "</div>\n"); 252 html = html.replace( 253 /\s*\[caption([^\[]+)\[\/caption\]\s*/gi, 254 "\n\n[caption$1[/caption]\n\n" 255 ); 256 html = html.replace(/caption\]\n\n+\[caption/g, "caption]\n\n[caption"); 257 html = html.replace( 258 new RegExp("\\s*<((?:" + blocklist2 + ")(?: [^>]*)?)\\s*>", "g"), 259 "\n<$1>" 260 ); 261 html = html.replace( 262 new RegExp("\\s*</(" + blocklist2 + ")>\\s*", "g"), 263 "</$1>\n" 264 ); 265 html = html.replace(/<((li|dt|dd)[^>]*)>/g, " <$1>"); 266 if (html.indexOf("<option") !== -1) { 267 html = html.replace(/\s*<option/g, "\n<option"); 268 html = html.replace(/\s*<\/select>/g, "\n</select>"); 269 } 270 if (html.indexOf("<hr") !== -1) { 271 html = html.replace(/\s*<hr( [^>]*)?>\s*/g, "\n\n<hr$1>\n\n"); 272 } 273 if (html.indexOf("<object") !== -1) { 274 html = html.replace(/<object[\s\S]+?<\/object>/g, (a) => { 275 return a.replace(/[\r\n]+/g, ""); 276 }); 277 } 278 html = html.replace(/<\/p#>/g, "</p>\n"); 279 html = html.replace(/\s*(<p [^>]+>[\s\S]*?<\/p>)/g, "\n$1"); 280 html = html.replace(/^\s+/, ""); 281 html = html.replace(/[\s\u00a0]+$/, ""); 282 if (preserveLinebreaks) { 283 html = html.replace(/<wp-line-break>/g, "\n"); 284 } 285 if (preserveBr) { 286 html = html.replace(/<wp-temp-br([^>]*)>/g, "<br$1>"); 287 } 288 if (preserve.length) { 289 html = html.replace(/<wp-preserve>/g, () => { 290 return preserve.shift(); 291 }); 292 } 293 return html; 294} 295 296 297(window.wp = window.wp || {}).autop = __webpack_exports__; 298/******/ })() 299;
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.