54 lines
1.3 KiB
JavaScript
54 lines
1.3 KiB
JavaScript
"use strict";
|
|
|
|
import {Utils} from "../Utils/Utils.ecma.js";
|
|
import {EventModel} from "../Models/EventModel.ecma.js";
|
|
|
|
/**
|
|
* @typedef {import("../Application/RoutesMaker.ecma.js").RoutesMaker} RoutesMaker
|
|
*/
|
|
|
|
/**
|
|
* @class
|
|
* @constructor
|
|
* @param {!RoutesMaker} routes_maker
|
|
* @returns {void}
|
|
* @access public
|
|
* @static
|
|
*/
|
|
export const BaseView = (function(){
|
|
|
|
/**
|
|
* @constructs BaseView
|
|
* @param {!RoutesMaker} routes_maker
|
|
* @returns {void}
|
|
* @access public
|
|
* @static
|
|
*/
|
|
const BaseView = function(routes_maker){
|
|
|
|
/** @type {BaseView} */
|
|
const self = this;
|
|
|
|
/** @type {HTMLElement|null} */
|
|
this.item = null;
|
|
/** @type {EventModel|null} */
|
|
this.on_change = null;
|
|
|
|
this.build = position => {
|
|
self.item ||
|
|
(self.on_change = new EventModel(self.item = Utils.set_html(position, [
|
|
["div", {
|
|
id : "routes-maker",
|
|
class : "routes-maker",
|
|
data_application : "RoutesMaker",
|
|
data_git : "https://git.k3y.pw/KyMAN/RoutesMaker",
|
|
data_url : "https://routesmaker.k3y.pw/",
|
|
data_author : "KyMAN"
|
|
}]
|
|
])[0]));
|
|
};
|
|
|
|
};
|
|
|
|
return BaseView;
|
|
})(); |