UNPKG

another_javascript_framework

Version:

html&javascript in one place

77 lines (71 loc) 2.57 kB
'use strict'; //https://cdn.jsdelivr.net/npm/another_javascript_framework/dist/a_js_f.es5.min.js var a_js_f = { $: function $(context) { var app = document.getElementById(context.element); app.innerHTML = context.template; if (context.mounted) context.mounted(); }, _: function _(element, context) { var errors = ['\\(-_-)/ wow such error: ', 'MUST BE a function (that returns numbers or strings), numbers or strings', 'Don\'t use both render and $render']; var finishedElement; if (!context) { finishedElement = '<' + element + ' />'; } else { if (context === Object(context)) { var finalAttrs = ''; var _iteratorNormalCompletion = true; var _didIteratorError = false; var _iteratorError = undefined; try { for (var _iterator = Object.keys(context)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { var key = _step.value; if (key === 'render' || key === '$render') { if (context.render && context.$render) { console.error(errors[0] + errors[2]); } else { if (typeof key === 'string' || typeof key === 'number') { finishedElement = '<' + element + ' ' + finalAttrs + '>' + context[key] + '</' + element + '>'; } else if (typeof key === 'function') { finishedElement = '<' + element + ' ' + finalAttrs + '>' + context[key]() + '</' + element + '>'; } else { console.error(errors[0] + 'Render ' + errors[1]); } } } else { if (typeof context[key] === 'number' || typeof context[key] === 'string') { finalAttrs = finalAttrs + key + '="' + context[key] + '" '; } else if (typeof context[key] === 'function') { finalAttrs = finalAttrs + key + '="' + context[key]() + '" '; } else { console.error(errors[0] + 'Atributtes ' + errors[1]); } if (!context.render && !context.$render) { finishedElement = '<' + element + ' ' + finalAttrs + '></' + element + '>'; } } } } catch (err) { _didIteratorError = true; _iteratorError = err; } finally { try { if (!_iteratorNormalCompletion && _iterator.return) { _iterator.return(); } } finally { if (_didIteratorError) { throw _iteratorError; } } } } else { finishedElement = '<' + element + '>' + context + '</' + element + '>'; } } return finishedElement; } }; //shorthands var createElement = a_js_f._, render = a_js_f.$;