UNPKG

@coderundebug/ui-web

Version:

A collection of UI web components that can be used in any web project.

2 lines 3.8 kB
/* By Stephen Paul Hassall (web: https://coderundebug.com) */ import{UiTools as t}from"./ui-tools.js";class e extends HTMLElement{static t=["a","ac","accumsan","ad","adipiscing","aenean","aliqua","aliquam","aliquet","aliquip","amet","anim","ante","aptent","arcu","at","auctor","augue","aute","bibendum","blandit","cillum","class","commodo","condimentum","congue","consectetuer","consequat","consequat","conubia","convallis","cras","cubilia","culpa","cum","cupidatat","curabitur","curae","cursus","dapibus","deserunt","diam","dictum","dictumst","dignissim","dis","do","dolor","dolore","donec","dui","duis","ea","egestas","eget","eiusmod","eleifend","elementum","elit","eni","enim","erat","eros","esse","est","et","etiam","eu","euismod","ex","excepteur","exercitation","facilisi","facilisis","fames","faucibus","felis","fermentum","feugiat","fringilla","fugiat","fusce","gravida","habitant","habitasse","hac","hendrerit","hymenaeos","iaculis","id","imperdiet","in","inceptos","incididunt","integer","interdum","ipsum","irure","justo","labore","laboris","laborum","lacinia","lacus","laoreet","lectus","leo","libero","ligula","litora","lobortis","lorem","luctus","maecenas","magna","magnis","malesuada","massa","mattis","mauris","metus","mi","minim","molestie","mollis","mollit","montes","morbi","mus","nam","nascetur","natoque","nec","neque","netus","nibh","nisi","nisl","non","nonummy","nostra","nostrud","nulla","nullam","nunc","occaecat","odio","officia","orci","ornare","pariatur","parturient","pede","pellentesque","penatibus","per","pharetra","phasellus","placerat","platea","porta","porttitor","posuere","potenti","praesent","pretium","primis","proident","proin","pulvinar","purus","quam","qui","quis","quisque","reprehenderit","rhoncus","ridiculus","risus","rutrum","sagittis","sapien","scelerisque","sed","sem","semper","senectus","sint","sit","sociis","sociosqu","sodales","sollicitudin","sunt","suscipit","suspendisse","taciti","tellus","tempor","tempus","tincidunt","torquent","tortor","tristique","turpis","ullamco","ullamcorper","ultrices","ultricies","urna","ut","varius","ve","vehicula","vel","velit","venenatis","veniam","vestibulum","vitae","vivamus","viverra","voluptate","volutpat","vulputate"];constructor(){super(),this.attachShadow({mode:"open"}),this.shadowRoot.adoptedStyleSheets=[e.uiCssStyleSheet],this.i=1,this.u=5,this.o=10,this.l=20,this.m=!1,this.p=!1}connectedCallback(){this.p=!0,this.h()}disconnectedCallback(){this.p=!1}attributeChangedCallback(t,e,i){!1!==this.p&&this.h()}static get observedAttributes(){return["paragraphs","sentences","words","spread"]}h(){let t=this.i;!0===this.hasAttribute("paragraphs")&&(t=parseInt(this.getAttribute("paragraphs")));let i=this.u;!0===this.hasAttribute("sentences")&&(i=parseInt(this.getAttribute("sentences")));let s=this.o;!0===this.hasAttribute("words")&&(s=parseInt(this.getAttribute("words")));let a=this.l;if(!0===this.hasAttribute("spread")&&(a=parseFloat(this.getAttribute("spread"))),!0===this.m&&t===this.i&&i===this.u&&s===this.o&&a===this.l)return;const u=Math.round(i*(a/100));let r=i-u;r<=0&&(r=1);const n=i+u,o=Math.round(s*(a/100));let l=s-o;l<=0&&(l=1);const c=s+o;this.shadowRoot.innerHTML="";for(let i=1;i<=t;i++){const t=[],i=Math.floor(Math.random()*(n-r+1)+r);let s=-1;for(let a=1;a<=i;a++){const i=[],a=Math.floor(Math.random()*(c-l+1)+l);for(let t=1;t<=a;t++){let u=Math.floor(Math.random()*e.t.length);u===s&&(u=Math.floor(Math.random()*e.t.length));let r=e.t[u];1===t&&(r=r.charAt(0).toUpperCase()+r.substring(1)),t===a&&(r+="."),i.push(r),s=u}const u=i.join(" ");t.push(u)}const a=t.join(" "),u=document.createElement("p");u.textContent=a,this.shadowRoot.appendChild(u)}this.m=!0}}e.uiCss="p:first-child{margin-top:0;}p:last-child{margin-bottom:0;}",e.uiHtml="",t.createUi(e,"ui-lorem",import.meta.url);