/** * EGroupware eTemplate2 - Description WebComponent * * @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License * @package api * @link https://www.egroupware.org * @author Nathan Gray */ import {LionSelect} from "@lion/select"; import {Et2InputWidget} from "../Et2InputWidget/Et2InputWidget"; import {et2_readAttrWithDefault} from "../et2_core_xml"; import {css, html, PropertyValues, render, repeat, TemplateResult} from "@lion/core"; import {cssImage} from "../Et2Widget/Et2Widget"; import {StaticOptions} from "./StaticOptions"; export interface SelectOption { value : string; label : string; // Hover help text title? : string; } /** * Base class for things that do selectbox type behaviour, to avoid putting too much or copying into read-only * selectboxes, also for common handling of properties for more special selectboxes. * * LionSelect (and any other LionField) use slots to wrap a real DOM node. ET2 doesn't expect this, * so we have to create the input node (via slots()) and respect that it is _external_ to the Web Component. * This complicates things like adding the options, since we can't just override _inputGroupInputTemplate() * and include them when rendering - the parent expects to find the