import { r as registerInstance, h, g as getElement } from './index-38bfff87.js'; import { i as icons } from './icons-af2bd2c4.js'; const iconsPreviewCss = ".container{display:flex;flex-direction:column;gap:10px}.html-wrapper{background:rgb(38, 38, 38);padding:20px;color:white;font-family:monospace;position:relative}.html-wrapper button{position:absolute;right:0px;bottom:0px;background:rgba(0, 0, 0, 0.85);color:#C9CDCF;border:0 none;padding:4px 10px;font-size:0.75rem;font-family:\"Nunito Sans\";font-weight:700;border-top:1px solid rgba(255, 255, 255, 0.1);border-left:1px solid rgba(255, 255, 255, 0.1);margin-left:-1px;border-radius:4px 0 0 0;cursor:pointer}.html-wrapper .component-name{color:#A8FF60}.html-wrapper .attribute-name{color:rgb(150, 203, 254)}.html-wrapper .attribute-value{color:rgb(180, 116, 221)}.preview__container{box-sizing:border-box;display:flex;align-items:center;padding:2px;flex-wrap:wrap;gap:4px}.preview__container .preview__container-item{display:flex;justify-content:center;align-items:center;border:1px solid #f1f1f1;padding:2px;width:50px;height:50px;position:relative}.preview__container .preview__container-item:active{border-color:#378375}.preview__container .preview__container-item:hover{cursor:pointer}.preview__container .preview__container-item.copied::after{z-index:1000;content:\"copied!\";position:absolute;top:0;left:50px;background-color:#000;color:white;padding:3px;border-radius:4px}"; const IconsPreview = class { constructor(hostRef) { registerInstance(this, hostRef); this.iconsArray = []; this.isCopied = false; this.copiedIndex = undefined; this.htmlTag = ''; this.iconName = `"c-info-24"`; } handleCopiedText() { this.isCopied = true; setTimeout(() => { this.isCopied = false; }, 2000); } copyIconText(icon) { this.htmlTag = ``; this.iconName = `"${icon}"`; } copyHtmlString() { const copiedTag = ``; navigator.clipboard.writeText(copiedTag); this.handleCopiedText(); } componentWillLoad() { for (let icon in icons) { this.iconsArray.push(icon); } } render() { return (h("div", { class: 'container' }, h("div", { class: 'html-wrapper' }, h("span", { class: "html-tag" }, "<"), h("span", { class: "component-name" }, "ifx-icon"), h("span", { class: "attribute-name" }, " icon"), "=", h("span", { class: "attribute-value" }, this.iconName), h("span", { class: "html-tag" }, ">"), h("span", { class: "html-tag" }, ""), h("button", { onClick: () => this.copyHtmlString() }, this.isCopied ? 'Copied' : 'Copy')), h("div", { class: "preview__container" }, this.iconsArray.map((icon, index) => h("div", { class: `preview__container-item ${this.isCopied && this.copiedIndex === index ? 'copied' : ""}`, onClick: () => this.copyIconText(icon) }, h("ifx-icon", { icon: icon })))))); } get el() { return getElement(this); } }; IconsPreview.style = iconsPreviewCss; export { IconsPreview as ifx_icons_preview }; //# sourceMappingURL=ifx-icons-preview.entry.js.map