import { html } from "lit";
import "../../icons/icon-switch-horizontal-on.js";
import "../../icons/icon-switch-horizontal-off.js";
import "../../icons/icon-switch-01-on.js";
import "../../icons/icon-switch-01-off.js";
import "../../icons/icon-switch-02-on.js";
import "../../icons/icon-switch-02-off.js";
import "../../icons/icon-switch-03-on.js";
import "../../icons/icon-switch-03-off.js";
import { customElement } from "../../decorator.js";
import { ObcAbstractAutomationButtonSquared } from "../automation-button/abstract-automation-button-squared.js";
import { property } from "lit/decorators.js";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __decorateClass = (decorators, target, key, kind) => {
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
  for (var i = decorators.length - 1, decorator; i >= 0; i--)
    if (decorator = decorators[i])
      result = (kind ? decorator(target, key, result) : decorator(result)) || result;
  if (kind && result) __defProp(target, key, result);
  return result;
};
var SwitchAlternativeIcon = /* @__PURE__ */ ((SwitchAlternativeIcon2) => {
  SwitchAlternativeIcon2["regular"] = "regular";
  SwitchAlternativeIcon2["s1"] = "s1";
  SwitchAlternativeIcon2["s2"] = "s2";
  SwitchAlternativeIcon2["s3"] = "s3";
  return SwitchAlternativeIcon2;
})(SwitchAlternativeIcon || {});
let ObcSwitch = class extends ObcAbstractAutomationButtonSquared {
  constructor() {
    super(...arguments);
    this.alternativeIcon = "regular";
  }
  get icon() {
    switch (this.alternativeIcon) {
      case "s1":
        if (this.on) {
          return html`<obi-switch-01-on
              usecsscolor
              slot="icon"
            ></obi-switch-01-on>
            <obi-switch-01-on
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-01-on>`;
        } else {
          return html`<obi-switch-01-off
              usecsscolor
              slot="icon"
            ></obi-switch-01-off>
            <obi-switch-01-off
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-01-off>`;
        }
      case "s2":
        if (this.on) {
          return html`<obi-switch-02-on
              usecsscolor
              slot="icon"
            ></obi-switch-02-on>
            <obi-switch-02-on
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-02-on>`;
        } else {
          return html`<obi-switch-02-off
              usecsscolor
              slot="icon"
            ></obi-switch-02-off>
            <obi-switch-02-off
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-02-off>`;
        }
      case "s3":
        if (this.on) {
          return html`<obi-switch-03-on
              usecsscolor
              slot="icon"
            ></obi-switch-03-on>
            <obi-switch-03-on
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-03-on>`;
        } else {
          return html`<obi-switch-03-off
              usecsscolor
              slot="icon"
            ></obi-switch-03-off>
            <obi-switch-03-off
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-03-off>`;
        }
      default:
        if (this.on) {
          return html`<obi-switch-horizontal-on
              usecsscolor
              slot="icon"
            ></obi-switch-horizontal-on>
            <obi-switch-horizontal-on
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-horizontal-on>`;
        } else {
          return html`<obi-switch-horizontal-off
              usecsscolor
              slot="icon"
            ></obi-switch-horizontal-off>
            <obi-switch-horizontal-off
              usecsscolor
              slot="icon-silhouette"
            ></obi-switch-horizontal-off>`;
        }
    }
  }
};
__decorateClass([
  property({ type: String })
], ObcSwitch.prototype, "alternativeIcon", 2);
ObcSwitch = __decorateClass([
  customElement("obc-switch")
], ObcSwitch);
export {
  ObcSwitch,
  SwitchAlternativeIcon
};
//# sourceMappingURL=switch.js.map
