svg_icon/svg_icon_component.js (19 lines of code) (raw):
/**
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {
LitElement,
svg,
html,
} from 'https://cdn.jsdelivr.net/gh/lit/dist@3/core/lit-core.min.js';
export class SVGIconComponent extends LitElement {
static properties = {
svg: { type: String }
};
constructor() {
super();
}
render() {
const span = document.createElement('span');
span.innerHTML = this.svg;
return html`${span}`;
}
}
customElements.define('svg-icon', SVGIconComponent);