@telia-ace/ace-chat-flamingo 1.1.123-rc.1 → 1.1.123-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +1 -1
- package/index.mjs +2 -1
- package/package.json +3 -3
package/index.js
CHANGED
|
@@ -842,7 +842,7 @@ ${n}</tr>
|
|
|
842
842
|
`}tablecell(n){const e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+`</${t}>
|
|
843
843
|
`}strong({tokens:n}){return`<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return`<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return`<code>${ge(n,!0)}</code>`}br(n){return"<br>"}del({tokens:n}){return`<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:t}){const i=this.parser.parseInline(t),s=Co(n);if(s===null)return i;n=s;let r='<a href="'+n+'"';return e&&(r+=' title="'+ge(e)+'"'),r+=">"+i+"</a>",r}image({href:n,title:e,text:t,tokens:i}){i&&(t=this.parser.parseInline(i,this.parser.textRenderer));const s=Co(n);if(s===null)return ge(t);n=s;let r=`<img src="${n}" alt="${t}"`;return e&&(r+=` title="${ge(e)}"`),r+=">",r}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:ge(n.text)}},Es=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}},Ae=class Ki{constructor(e){A(this,"options");A(this,"renderer");A(this,"textRenderer");this.options=e||nt,this.options.renderer=this.options.renderer||new Xt,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Es}static parse(e,t){return new Ki(t).parse(e)}static parseInline(e,t){return new Ki(t).parseInline(e)}parse(e,t=!0){var s,r;let i="";for(let o=0;o<e.length;o++){const a=e[o];if((r=(s=this.options.extensions)==null?void 0:s.renderers)!=null&&r[a.type]){const c=a,u=this.options.extensions.renderers[c.type].call({parser:this},c);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(c.type)){i+=u||"";continue}}const l=a;switch(l.type){case"space":{i+=this.renderer.space(l);continue}case"hr":{i+=this.renderer.hr(l);continue}case"heading":{i+=this.renderer.heading(l);continue}case"code":{i+=this.renderer.code(l);continue}case"table":{i+=this.renderer.table(l);continue}case"blockquote":{i+=this.renderer.blockquote(l);continue}case"list":{i+=this.renderer.list(l);continue}case"html":{i+=this.renderer.html(l);continue}case"paragraph":{i+=this.renderer.paragraph(l);continue}case"text":{let c=l,u=this.renderer.text(c);for(;o+1<e.length&&e[o+1].type==="text";)c=e[++o],u+=`
|
|
844
844
|
`+this.renderer.text(c);t?i+=this.renderer.paragraph({type:"paragraph",raw:u,text:u,tokens:[{type:"text",raw:u,text:u,escaped:!0}]}):i+=u;continue}default:{const c='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return i}parseInline(e,t=this.renderer){var s,r;let i="";for(let o=0;o<e.length;o++){const a=e[o];if((r=(s=this.options.extensions)==null?void 0:s.renderers)!=null&&r[a.type]){const c=this.options.extensions.renderers[a.type].call({parser:this},a);if(c!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(a.type)){i+=c||"";continue}}const l=a;switch(l.type){case"escape":{i+=t.text(l);break}case"html":{i+=t.html(l);break}case"link":{i+=t.link(l);break}case"image":{i+=t.image(l);break}case"strong":{i+=t.strong(l);break}case"em":{i+=t.em(l);break}case"codespan":{i+=t.codespan(l);break}case"br":{i+=t.br(l);break}case"del":{i+=t.del(l);break}case"text":{i+=t.text(l);break}default:{const c='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw new Error(c)}}}return i}},Li,Sn=(Li=class{constructor(n){A(this,"options");A(this,"block");this.options=n||nt}preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}provideLexer(){return this.block?_e.lex:_e.lexInline}provideParser(){return this.block?Ae.parse:Ae.parseInline}},A(Li,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"])),Li),Od=class{constructor(...n){A(this,"defaults",bs());A(this,"options",this.setOptions);A(this,"parse",this.parseMarkdown(!0));A(this,"parseInline",this.parseMarkdown(!1));A(this,"Parser",Ae);A(this,"Renderer",Xt);A(this,"TextRenderer",Es);A(this,"Lexer",_e);A(this,"Tokenizer",Hn);A(this,"Hooks",Sn);this.use(...n)}walkTokens(n,e){var i,s;let t=[];for(const r of n)switch(t=t.concat(e.call(this,r)),r.type){case"table":{const o=r;for(const a of o.header)t=t.concat(this.walkTokens(a.tokens,e));for(const a of o.rows)for(const l of a)t=t.concat(this.walkTokens(l.tokens,e));break}case"list":{const o=r;t=t.concat(this.walkTokens(o.items,e));break}default:{const o=r;(s=(i=this.defaults.extensions)==null?void 0:i.childTokens)!=null&&s[o.type]?this.defaults.extensions.childTokens[o.type].forEach(a=>{const l=o[a].flat(1/0);t=t.concat(this.walkTokens(l,e))}):o.tokens&&(t=t.concat(this.walkTokens(o.tokens,e)))}}return t}use(...n){const e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{const i={...t};if(i.async=this.defaults.async||i.async||!1,t.extensions&&(t.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if("renderer"in s){const r=e.renderers[s.name];r?e.renderers[s.name]=function(...o){let a=s.renderer.apply(this,o);return a===!1&&(a=r.apply(this,o)),a}:e.renderers[s.name]=s.renderer}if("tokenizer"in s){if(!s.level||s.level!=="block"&&s.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const r=e[s.level];r?r.unshift(s.tokenizer):e[s.level]=[s.tokenizer],s.start&&(s.level==="block"?e.startBlock?e.startBlock.push(s.start):e.startBlock=[s.start]:s.level==="inline"&&(e.startInline?e.startInline.push(s.start):e.startInline=[s.start]))}"childTokens"in s&&s.childTokens&&(e.childTokens[s.name]=s.childTokens)}),i.extensions=e),t.renderer){const s=this.defaults.renderer||new Xt(this.defaults);for(const r in t.renderer){if(!(r in s))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const o=r,a=t.renderer[o],l=s[o];s[o]=(...c)=>{let u=a.apply(s,c);return u===!1&&(u=l.apply(s,c)),u||""}}i.renderer=s}if(t.tokenizer){const s=this.defaults.tokenizer||new Hn(this.defaults);for(const r in t.tokenizer){if(!(r in s))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const o=r,a=t.tokenizer[o],l=s[o];s[o]=(...c)=>{let u=a.apply(s,c);return u===!1&&(u=l.apply(s,c)),u}}i.tokenizer=s}if(t.hooks){const s=this.defaults.hooks||new Sn;for(const r in t.hooks){if(!(r in s))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;const o=r,a=t.hooks[o],l=s[o];Sn.passThroughHooks.has(r)?s[o]=c=>{if(this.defaults.async)return Promise.resolve(a.call(s,c)).then(p=>l.call(s,p));const u=a.call(s,c);return l.call(s,u)}:s[o]=(...c)=>{let u=a.apply(s,c);return u===!1&&(u=l.apply(s,c)),u}}i.hooks=s}if(t.walkTokens){const s=this.defaults.walkTokens,r=t.walkTokens;i.walkTokens=function(o){let a=[];return a.push(r.call(this,o)),s&&(a=a.concat(s.call(this,o))),a}}this.defaults={...this.defaults,...i}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return _e.lex(n,e??this.defaults)}parser(n,e){return Ae.parse(n,e??this.defaults)}parseMarkdown(n){return(t,i)=>{const s={...i},r={...this.defaults,...s},o=this.onError(!!r.silent,!!r.async);if(this.defaults.async===!0&&s.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));r.hooks&&(r.hooks.options=r,r.hooks.block=n);const a=r.hooks?r.hooks.provideLexer():n?_e.lex:_e.lexInline,l=r.hooks?r.hooks.provideParser():n?Ae.parse:Ae.parseInline;if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(t):t).then(c=>a(c,r)).then(c=>r.hooks?r.hooks.processAllTokens(c):c).then(c=>r.walkTokens?Promise.all(this.walkTokens(c,r.walkTokens)).then(()=>c):c).then(c=>l(c,r)).then(c=>r.hooks?r.hooks.postprocess(c):c).catch(o);try{r.hooks&&(t=r.hooks.preprocess(t));let c=a(t,r);r.hooks&&(c=r.hooks.processAllTokens(c)),r.walkTokens&&this.walkTokens(c,r.walkTokens);let u=l(c,r);return r.hooks&&(u=r.hooks.postprocess(u)),u}catch(c){return o(c)}}}onError(n,e){return t=>{if(t.message+=`
|
|
845
|
-
Please report this to https://github.com/markedjs/marked.`,n){const i="<p>An error occurred:</p><pre>"+ge(t.message+"",!0)+"</pre>";return e?Promise.resolve(i):i}if(e)return Promise.reject(t);throw t}}},et=new Od;function S(n,e){return et.parse(n,e)}S.options=S.setOptions=function(n){return et.setOptions(n),S.defaults=et.defaults,Da(S.defaults),S};S.getDefaults=bs;S.defaults=nt;S.use=function(...n){return et.use(...n),S.defaults=et.defaults,Da(S.defaults),S};S.walkTokens=function(n,e){return et.walkTokens(n,e)};S.parseInline=et.parseInline;S.Parser=Ae;S.parser=Ae.parse;S.Renderer=Xt;S.TextRenderer=Es;S.Lexer=_e;S.lexer=_e.lex;S.Tokenizer=Hn;S.Hooks=Sn;S.parse=S;S.options;S.setOptions;S.use;S.walkTokens;S.parseInline;Ae.parse;_e.lex;var Ld=Object.defineProperty,Ya=(n,e,t,i)=>{for(var s=void 0,r=n.length-1,o;r>=0;r--)(o=n[r])&&(s=o(e,t,s)||s);return s&&Ld(e,t,s),s};const Qa=new Xt;Qa.link=function({href:n,title:e,text:t}){return e??(e=t),`<a target="_blank" href="${n}" title="${e}">${t}</a>`};S.use({renderer:Qa});const Fs=class Fs extends _{constructor(){super(...arguments),this.showLightbox=!1,this.imageUrl="",this.altText="",this.scrollRef=ve(),this.contentRef=ve(),this.autoScroll=!0,this.buffer="",this.pointer=0,this.imageRegexp=new RegExp(/!\[[^[]*\([^)]*\)/gm)}handleAutoscroll(){this.addEventListener("wheel",()=>{this.autoScroll=!1},{passive:!0}),this.addEventListener("click",()=>{this.autoScroll=!1})}handleLightboxClose(){this.addEventListener("action",e=>{e.detail.key==="close-lightbox"&&(this.showLightbox=!1)})}handleLightboxOpen(){this.contentRef.value.addEventListener("click",e=>{e.target.tagName==="IMG"&&(this.showLightbox=!0,this.imageUrl=e.target.src,this.altText=e.target.alt)})}includesImage(e){return this.imageRegexp.test(e)}getLastChunk(){const e=this.message.content.length-this.pointer;return e===0?"":(this.pointer=this.message.content.length,this.message.content.slice(-e))}firstUpdated(){this.handleAutoscroll(),this.handleLightboxOpen(),this.handleLightboxClose()}updated(){var s,r;const e=this.getLastChunk();if(!e)return;this.buffer+=e;const t=Na.sanitize(S.parse(this.buffer));if(this.includesImage(this.buffer))(s=this.contentRef.value)==null||s.appendChild(document.createElement("div")),this.buffer="";else if(this.buffer.includes("!["))return;const i=(r=this.contentRef.value)==null?void 0:r.querySelector("div:last-of-type");i.innerHTML=Ni(t),this.applyCodeStyles(i),this.autoScroll&&this.scrollRef.value.scrollIntoView()}applyCodeStyles(e){if(!e)return;e.querySelectorAll("code").forEach(i=>{i.style.whiteSpace="pre-wrap"})}render(){return y`
|
|
845
|
+
Please report this to https://github.com/markedjs/marked.`,n){const i="<p>An error occurred:</p><pre>"+ge(t.message+"",!0)+"</pre>";return e?Promise.resolve(i):i}if(e)return Promise.reject(t);throw t}}},et=new Od;function S(n,e){return et.parse(n,e)}S.options=S.setOptions=function(n){return et.setOptions(n),S.defaults=et.defaults,Da(S.defaults),S};S.getDefaults=bs;S.defaults=nt;S.use=function(...n){return et.use(...n),S.defaults=et.defaults,Da(S.defaults),S};S.walkTokens=function(n,e){return et.walkTokens(n,e)};S.parseInline=et.parseInline;S.Parser=Ae;S.parser=Ae.parse;S.Renderer=Xt;S.TextRenderer=Es;S.Lexer=_e;S.lexer=_e.lex;S.Tokenizer=Hn;S.Hooks=Sn;S.parse=S;S.options;S.setOptions;S.use;S.walkTokens;S.parseInline;Ae.parse;_e.lex;var Ld=Object.defineProperty,Ya=(n,e,t,i)=>{for(var s=void 0,r=n.length-1,o;r>=0;r--)(o=n[r])&&(s=o(e,t,s)||s);return s&&Ld(e,t,s),s};const Qa=new Xt;Qa.link=function({href:n,title:e,text:t}){return e??(e=t),`<a target="_blank" href="${n}" title="${e}">${t}</a>`};S.use({renderer:Qa});const Fs=class Fs extends _{constructor(){super(...arguments),this.showLightbox=!1,this.imageUrl="",this.altText="",this.scrollRef=ve(),this.contentRef=ve(),this.autoScroll=!0,this.buffer="",this.pointer=0,this.imageRegexp=new RegExp(/!\[[^[]*\([^)]*\)/gm)}handleAutoscroll(){this.addEventListener("wheel",()=>{this.autoScroll=!1},{passive:!0}),this.addEventListener("click",()=>{this.autoScroll=!1})}handleLightboxClose(){this.addEventListener("action",e=>{e.detail.key==="close-lightbox"&&(this.showLightbox=!1)})}handleLightboxOpen(){this.contentRef.value.addEventListener("click",e=>{e.target.tagName==="IMG"&&(this.showLightbox=!0,this.imageUrl=e.target.src,this.altText=e.target.alt)})}includesImage(e){return this.imageRegexp.test(e)}getLastChunk(){const e=this.message.content.length-this.pointer;return e===0?"":(this.pointer=this.message.content.length,this.message.content.slice(-e))}firstUpdated(){this.handleAutoscroll(),this.handleLightboxOpen(),this.handleLightboxClose()}updated(){var s,r;const e=this.getLastChunk();if(!e)return;this.buffer+=e;const t=Na.sanitize(S.parse(this.buffer),{ADD_ATTR:["target"]});if(this.includesImage(this.buffer))(s=this.contentRef.value)==null||s.appendChild(document.createElement("div")),this.buffer="";else if(this.buffer.includes("!["))return;const i=(r=this.contentRef.value)==null?void 0:r.querySelector("div:last-of-type");i.innerHTML=Ni(t),this.applyCodeStyles(i),this.autoScroll&&this.scrollRef.value.scrollIntoView()}applyCodeStyles(e){if(!e)return;e.querySelectorAll("code").forEach(i=>{i.style.whiteSpace="pre-wrap"})}render(){return y`
|
|
846
846
|
<div class="message-type-markdown" ${be(this.contentRef)}>
|
|
847
847
|
<div></div>
|
|
848
848
|
</div>
|
package/index.mjs
CHANGED
|
@@ -6953,7 +6953,8 @@ const Fs = class Fs extends _ {
|
|
|
6953
6953
|
if (!e) return;
|
|
6954
6954
|
this.buffer += e;
|
|
6955
6955
|
const t = Na.sanitize(
|
|
6956
|
-
S.parse(this.buffer)
|
|
6956
|
+
S.parse(this.buffer),
|
|
6957
|
+
{ ADD_ATTR: ["target"] }
|
|
6957
6958
|
);
|
|
6958
6959
|
if (this.includesImage(this.buffer))
|
|
6959
6960
|
(s = this.contentRef.value) == null || s.appendChild(document.createElement("div")), this.buffer = "";
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@telia-ace/ace-chat-flamingo",
|
|
3
|
-
"version": "1.1.123-rc.
|
|
3
|
+
"version": "1.1.123-rc.2",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@telia-ace/widget-core-flamingo": "1.1.123-rc.
|
|
6
|
-
"@telia-ace/widget-conversation-flamingo": "1.1.123-rc.
|
|
5
|
+
"@telia-ace/widget-core-flamingo": "1.1.123-rc.2",
|
|
6
|
+
"@telia-ace/widget-conversation-flamingo": "1.1.123-rc.2",
|
|
7
7
|
"rxjs": "^7.8.2",
|
|
8
8
|
"lit": "^3.0.2",
|
|
9
9
|
"@teliads/icons": "^8.4.0",
|