@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 1.39 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.19/LICENSE.txt */
import t from"../../../../core/Logger.js";import{expressionReferencePrefix as e,fieldmapsExpressionNamePrefix as r}from"./constants.js";function n(t){const e=/{[^{]+?}/g,r=[...t.matchAll(e)];let n=0;const o=[],s=[];for(const i of r){const e=i[0];o.push(t.slice(n,i.index)),s.push(e),n=i.index+e.length}return o.push(t.slice(n)),{literals:o,templates:s}}function o(r){const[n,o]=r.split(e);return""===n&&o?o:(t.getLogger("esri.widgets.BatchAttributeForm/templates/support/textElementTemplateUtils").error("extractExpressionNameFromString:invalid-input",`The string ${r} is not a valid expression reference of the form '${e}/expressionName'`),"")}function s(t){return t.startsWith(e)}function i(t){return t.startsWith(r)}let a;const l=["blockquote","html","hr","checkbox","table","tablerow","tablecell","image"];async function c(t){return a||await u(),a.parse(t)}async function u(){const{Marked:t}=await import("marked"),e=function({href:t,title:e,tokens:r}){return`<a${null!=t?` href="${t}"`:""}${null!=e?` title="${e}"`:""} target="_blank">${this.parser.parseInline(r)}</a>`},r=()=>"",n={};for(const o of l)n[o]=r;a=new t({renderer:{link:e,...n}})}export{c as compileTextElementMarkdownToHTML,o as extractExpressionNameFromString,s as isExpressionReference,i as isLegacyFieldMapsExpressionReference,n as splitStringIntoParts};