import { r as t, g as e, h as s, H as i, a as o } from "./p-9b9ccd0c.js";

import { g as r } from "./p-d42e842b.js";

import "./p-6534555e.js";

import "lit";

import "lit/directives/when.js";

import "lit/directives/if-defined.js";

import { L as n } from "./p-311eedf3.js";

const a = "button.button-secondary{border-color:var(--color-border-neutral-default)}:host{display:grid;block-size:100%;overflow:auto;grid-template-rows:max-content 1fr max-content}.section{display:contents}.main{overflow:auto;display:flex;align-items:center;justify-content:center}";

// This is a starting template. Do not edit this file directly.
// Dupicate it and modify the new file as needed.
var c = undefined && undefined.__classPrivateFieldGet || function(t, e, s, i) {
  if (s === "a" && !i) throw new TypeError("Private accessor was defined without a getter");
  if (typeof e === "function" ? t !== e || !i : !e.has(t)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
  return s === "m" ? i : s === "a" ? i.call(t) : i ? i.value : e.get(t);
};

var d = undefined && undefined.__classPrivateFieldSet || function(t, e, s, i, o) {
  if (i === "m") throw new TypeError("Private method is not writable");
  if (i === "a" && !o) throw new TypeError("Private accessor was defined without a setter");
  if (typeof e === "function" ? t !== e || !o : !e.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
  return i === "a" ? o.call(t, s) : o ? o.value = s : e.set(t, s), s;
};

var l, h, f, u;

const m = [ 
// Use only the bundles that are needed for this component.
"resets/box-sizing", "components/edit", "components/button", "components/icon", "utils/layout", "utils/form", "utils/typography", "utils/spacing", "chameleon/scrollbar" ];

const p = r({
  category: "system",
  name: "folder",
  colorType: "on-primary"
});

const b = class {
  constructor(s) {
    t(this, s);
    l.set(this, void 0);
    h.set(this, e(`./gx-ide-assets/new-kb/shortcuts.json`));
    f.set(this, (() => {
      this.cancelCallback();
    }));
    u.set(this, (() => {
      this.saveCallback();
    }));
    this.myStateVariable = undefined;
    this.firstName = undefined;
    this.cancelCallback = undefined;
    this.saveCallback = undefined;
  }
  firstNameChanged(t) {
    console.log("First name changed:", t);
  }
  async componentWillLoad() {
    this._componentLocale = await n.getComponentStrings(this.el);
  }
  componentDidLoad() {
    // Here you can do any additional setup after the component has been rendered.
  }
  /**
     * Suspends or reactivates the shortcuts
     */  async suspendShortcuts(t) {
    if (t) {
      c(this, l, "f").suspend = true;
    } else {
      c(this, l, "f").suspend = false;
    }
  }
  render() {
    return s(i, {
      class: "widget spacing-body"
    }, s("ch-theme", {
      model: m
    }), s("ch-shortcuts", {
      src: c(this, h, "f"),
      ref: t => d(this, l, t, "f")
    }), s("section", {
      class: "section"
    }, s("header", {
      class: "header dialog-header dialog-header-with-border"
    }, s("div", {
      class: "field field-block"
    }, s("label", {
      class: "label",
      htmlFor: "first-name"
    }, this._componentLocale.main.firstName), s("ch-edit", {
      class: "input",
      id: "first-name",
      value: this.firstName
    }))), s("div", {
      class: "main"
    }, "The main content here"), s("footer", {
      class: "footer dialog-footer dialog-footer-with-border"
    }, s("div", {
      class: "buttons-spacer"
    }, s("button", {
      // #cancel
      class: "button-secondary",
      id: "button-cancel",
      onClick: c(this, f, "f"),
      part: "button-cancel"
    }, this._componentLocale.footer.btnCancel), s("button", {
      // #create
      class: "button-primary button-icon-and-text",
      id: "button-create",
      onClick: c(this, u, "f"),
      part: "button-create"
    }, s("ch-image", {
      class: "icon-m",
      src: p
    }), this._componentLocale.footer.btnSave)))));
  }
  static get assetsDirs() {
    return [ "gx-ide-assets/starting-template" ];
  }
  get el() {
    return o(this);
  }
  static get watchers() {
    return {
      firstName: [ "firstNameChanged" ]
    };
  }
};

l = new WeakMap, h = new WeakMap, f = new WeakMap, u = new WeakMap;

b.style = a;

export { b as gx_ide_starting_template };
//# sourceMappingURL=p-b6d59827.entry.js.map