'use strict';

Object.defineProperty(exports, '__esModule', { value: true });

const index = require('./index-dd0345d7.js');
const index$1 = require('./index-53f5a5fc.js');
const statusNote = require('./status-note-b89242d6.js');

const radioButtonGroupCss = ":host{--font-weight-label:var(--telekom-typography-font-weight-medium);--font-size-label:var(--telekom-typography-font-size-body);--font-size-helper-text:var(--telekom-typography-font-size-small);--color-helper-text:var(\n    --telekom-color-text-and-icon-functional-informational\n  );--padding-bottom-helper-text:var(--telekom-spacing-unit-x2);--margin-top-helper-text:var(--telekom-spacing-unit-x1);--font-weight-helper-text:var(--telekom-typography-font-weight-medium);--font-size-error-helper-text:var(--telekom-typography-font-size-small);--color-error-helper-text:var(\n    --telekom-color-text-and-icon-functional-danger\n  );--padding-bottom-error-helper-text:var(--telekom-spacing-unit-x2);--margin-top-error-helper-text:var(--telekom-spacing-unit-x1);--font-weight-error-helper-text:var(--telekom-typography-font-weight-medium);--color-error-helper-text-hcm:var(\n    --telekom-color-text-and-icon-white-standard\n  );--font-size-title:var(--font-size-label);--font-weight-title:var(--telekom-typography-font-weight-medium);--padding-bottom-title:var(--telekom-spacing-unit-x1);--margin-left-title:var(--telekom-spacing-unit-x05);--margin-top-slotted-item:var(--telekom-spacing-unit-x1)}.radio-button-group{display:inline-flex;flex-direction:column;border:0}.radio-button-group__container{display:flex;flex-direction:column}.radio-button-group__helper-text{color:var(--color-helper-text);font-size:var(--font-size-helper-text);margin-top:calc(var(--margin-top-helper-text) * +1);padding-bottom:calc(var(--padding-bottom-helper-text) * -1);font-weight:var(--font-weight-helper-text)}.radio-button-group__helper-text--status-error{color:var(--color-error-helper-text);font-size:var(--font-size-error-helper-text);margin-top:calc(var(--margin-top-error-helper-text) * +1);padding-bottom:calc(var(--padding-bottom-error-helper-text) * -1);font-weight:var(--font-weight-error-helper-text)}.radio-button-group__title-label{font-size:var(--font-size-title);font-weight:var(--font-weight-title);padding-bottom:var(--padding-bottom-title);margin-left:calc(var(--margin-left-title) * -1.5)}::slotted(*){margin-top:var(--margin-top-slotted-item)}@media screen and (forced-colors: active), (-ms-high-contrast: active){.radio-button-group__helper-text--status-error{color:var(--color-error-helper-text-hcm)}}";

const RadioButtonGroup = class {
  constructor(hostRef) {
    index.registerInstance(this, hostRef);
    /** (optional) Input label */
    this.label = '';
    /** (optional) Input helper text */
    this.helperText = '';
    /** @deprecated - invalid should replace status */
    this.status = '';
    /** (optional) Input status */
    this.invalid = false;
  }
  componentDidRender() {
    if (this.status !== '') {
      statusNote.statusNote({
        tag: 'deprecated',
        message: 'Property "status" is deprecated. Please use the "invalid" property!',
        type: 'warn',
        source: this.hostElement,
      });
    }
  }
  render() {
    return (index.h("fieldset", { class: "radio-button-group" }, index.h("legend", { class: "radio-button-group__title" }, index.h("label", { class: "radio-button-group__title-label", "aria-label": this.label }, this.label), this.helperText ? (index.h("div", { role: "text", class: this.getCssClassMap(), "aria-label": this.helperText }, this.helperText)) : null), index.h("div", { class: "radio-button-group__container" }, index.h("slot", null))));
  }
  getCssClassMap() {
    return index$1.classnames('radio-button-group__helper-text', (this.status === 'error' || this.invalid) &&
      `radio-button-group__helper-text--status-error`);
  }
  get hostElement() { return index.getElement(this); }
};
RadioButtonGroup.style = radioButtonGroupCss;

exports.scale_radio_button_group = RadioButtonGroup;
