| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- import { element } from "./element.js";
- import { type_manager } from "./functions.js";
- class elements_list {
- #content;
- constructor() {
- this.#content = {};
- }
- append(target) {
- if (!(target instanceof element)) {
- throw "New target on list must be instance of an element.";
- }
- if (this.exists(target)) {
- throw "This element already exists on list.";
- }
- this.#content[target.name] = target;
- }
- exists(target) {
- if (target instanceof element) {
- target = target.name;
- }
- if (!(type_manager.is_string(target))) {
- throw "Target must be instance of string or element.";
- }
- return this.#content.hasOwnProperty(target);
- }
- get(target) {
- if (!this.exists(target)) {
- throw "Element with that name not exists on list.";
- }
- return this.#content[target];
- }
- get content() {
- return Object.assign({}, this.#content);
- }
- }
- export { elements_list };
|