{"version":3,"file":"ui-vts-kit-ng-vts-core-highlight.mjs","sources":["../../components/core/highlight/highlight.pipe.ts","../../components/core/highlight/highlight.module.ts","../../components/core/highlight/public-api.ts","../../components/core/highlight/ui-vts-kit-ng-vts-core-highlight.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Pipe, PipeTransform } from '@angular/core';\n\n// Regular Expressions for parsing tags and attributes\nconst SURROGATE_PAIR_REGEXP = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n// ! to ~ is the ASCII range.\nconst NON_ALPHANUMERIC_REGEXP = /([^\\#-~ |!])/g;\n\n/**\n * Escapes all potentially dangerous characters, so that the\n * resulting string can be safely inserted into attribute or\n * element text.\n */\nfunction encodeEntities(value: string): string {\n  return value\n    .replace(/&/g, '&amp;')\n    .replace(SURROGATE_PAIR_REGEXP, (match: string) => {\n      const hi = match.charCodeAt(0);\n      const low = match.charCodeAt(1);\n      return `&#${(hi - 0xd800) * 0x400 + (low - 0xdc00) + 0x10000};`;\n    })\n    .replace(NON_ALPHANUMERIC_REGEXP, (match: string) => `&#${match.charCodeAt(0)};`)\n    .replace(/</g, '&lt;')\n    .replace(/>/g, '&gt;');\n}\n\n@Pipe({\n  name: 'vtsHighlight',\n  pure: true\n})\nexport class VtsHighlightPipe implements PipeTransform {\n  private UNIQUE_WRAPPERS: [string, string] = ['##==-open_tag-==##', '##==-close_tag-==##'];\n\n  transform(value: string, highlightValue: string, flags?: string, klass?: string): string | null {\n    if (!highlightValue) {\n      return value;\n    }\n\n    // Escapes regex keyword to interpret these characters literally\n    const searchValue = new RegExp(\n      highlightValue.replace(/([.*+?^=!:${}()|[\\]\\/\\\\])/g, '\\\\$&'),\n      flags\n    );\n    const wrapValue = value.replace(\n      searchValue,\n      `${this.UNIQUE_WRAPPERS[0]}$&${this.UNIQUE_WRAPPERS[1]}`\n    );\n    return encodeEntities(wrapValue)\n      .replace(\n        new RegExp(this.UNIQUE_WRAPPERS[0], 'g'),\n        klass ? `<span class=\"${klass}\">` : '<span>'\n      )\n      .replace(new RegExp(this.UNIQUE_WRAPPERS[1], 'g'), '</span>');\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { VtsHighlightPipe } from './highlight.pipe';\n\n@NgModule({\n  imports: [CommonModule],\n  exports: [VtsHighlightPipe],\n  declarations: [VtsHighlightPipe]\n})\nexport class VtsHighlightModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './highlight.pipe';\nexport * from './highlight.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}