@wener/console
Version:
Base console UI toolkit
90 lines (89 loc) • 2.91 kB
JavaScript
function _class_call_check(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor)
descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function _create_class(Constructor, protoProps, staticProps) {
if (protoProps)
_defineProperties(Constructor.prototype, protoProps);
if (staticProps)
_defineProperties(Constructor, staticProps);
return Constructor;
}
function _define_property(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
}
else {
obj[key] = value;
}
return obj;
}
function _object_spread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === "function") {
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
}
ownKeys.forEach(function (key) {
_define_property(target, key, source[key]);
});
}
return target;
}
import { getRootWindow } from "../window/index.js";
var applets = [];
export function defineApplet(opts) {
var window = opts.window;
var _window;
(_window = window).key || (_window.key = opts.name);
var _window1;
(_window1 = window).title || (_window1.title = opts.title);
var applet = new Applet(opts);
applets.push(applet);
return applet;
}
export function getApplets() {
return applets;
}
var Applet = /*#__PURE__*/ function () {
"use strict";
function Applet(options) {
_class_call_check(this, Applet);
_define_property(this, "options", void 0);
_define_property(this, "window", void 0);
this.options = options;
}
_create_class(Applet, [
{
key: "toggle",
value: function toggle() {
var opts = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
if (this.window && this.window.state.minimized) {
this.window.minimize(false);
return;
}
this.window = getRootWindow().toggle(_object_spread({}, this.options.window, opts));
}
}
]);
return Applet;
}();