@merkur/core 0.29.3 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.es5.js +1 -1
- package/lib/index.es9.cjs +4 -33
- package/lib/index.es9.mjs +4 -32
- package/package.json +2 -2
package/lib/index.es5.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e){return function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||t(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,r){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=t(e))||r&&e&&"number"==typeof e.length){n&&(e=n);var o=0,s=function(){};return{s:s,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:s}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,u=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return u=e.done,e},e:function(e){a=!0,i=e},f:function(){try{u||null==n.return||n.return()}finally{if(a)throw i}}}}function t(e,r){if(e){if("string"==typeof e)return n(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?n(e,r):void 0}}function n(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function o(e,r,t,n,o,s,i){try{var u=e[s](i),a=u.value}catch(e){return void t(e)}u.done?r(a):Promise.resolve(a).then(n,o)}function s(e){return function(){var r=this,t=arguments;return new Promise((function(n,s){var i=e.apply(r,t);function u(e){o(i,n,s,u,a,"next",e)}function a(e){o(i,n,s,u,a,"throw",e)}u(void 0)}))}}function i(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function u(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?i(Object(t),!0).forEach((function(r){a(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):i(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function a(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function c(e,r){return function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return r.apply(void 0,[e].concat(n))}}function l(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=u({},e);return r.forEach((function(e){n[e]=n[e]||t})),n}function f(e,r){r=r||e,Object.keys(r).forEach((function(t){if(d(r[t])){var n=r[t];r[t]=c(e,n)}}))}function d(e){return"function"==typeof e}function p(e,r,t){return m.apply(this,arguments)}function m(){return(m=s(regeneratorRuntime.mark((function t(n,o,s){var i,u,a;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:i=r(n.$plugins),t.prev=1,i.s();case 3:if((u=i.n()).done){t.next=11;break}if(!d((a=u.value)[o])){t.next=9;break}return t.next=8,a[o].apply(a,[n].concat(e(s)));case 8:n=t.sent;case 9:t.next=3;break;case 11:t.next=16;break;case 13:t.prev=13,t.t0=t.catch(1),i.e(t.t0);case 16:return t.prev=16,i.f(),t.finish(16);case 19:return t.abrupt("return",n);case 20:case"end":return t.stop()}}),t,null,[[1,13,16,19]])})))).apply(this,arguments)}function j(){return j=s(regeneratorRuntime.mark((function e(){var r,t,n,o,i,u=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l(r=u.length>0&&void 0!==u[0]?u[0]:{},["$dependencies","$external"]),r=l(r,["setup","create"],(function(e){return e})),n=(t=r).setup,o=t.create,i={setup:function(e){var r=arguments;return s(regeneratorRuntime.mark((function t(){var o,s,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(o=r.length,s=new Array(o>1?o-1:0),i=1;i<o;i++)s[i-1]=r[i];return t.next=3,p(e,"setup",s);case 3:return e=t.sent,t.abrupt("return",n.apply(void 0,[e].concat(s)));case 5:case"end":return t.stop()}}),t)})))()},create:function(e){var r=arguments;return s(regeneratorRuntime.mark((function t(){var n,s,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(n=r.length,s=new Array(n>1?n-1:0),i=1;i<n;i++)s[i-1]=r[i];return t.next=3,p(e,"create",s);case 3:return e=t.sent,t.abrupt("return",o.apply(void 0,[e].concat(s)));case 5:case"end":return t.stop()}}),t)})))()},$plugins:(r.$plugins||[]).map((function(e){return e()}))},i.name=r.name,i.version=r.version,i.$dependencies=r.$dependencies,i.$external=r.$external,i.$in={},delete r.name,delete r.version,delete r.$dependencies,delete r.$external,delete r.$plugins,delete r.setup,delete r.create,e.next=19,i.setup(i,r);case 19:return i=e.sent,e.next=22,i.create(i,r);case 22:return f(i=e.sent),Object.seal(i),e.abrupt("return",i);case 26:case"end":return e.stop()}}),e)}))),j.apply(this,arguments)}function y(e){var r=e.name,t=e.version,n=e.createWidget;v().$in.widgetFactory[r+t]=n}function g(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=v(),t=e.name,n=e.version,o=r.$in.widgetFactory[t+n];if(!d(o))throw new Error('The widget with defined name and version "'.concat(t+n,'" is not defined.'));return o(e)}function v(){var e=h();return e.__merkur__||(e.__merkur__={$in:{widgets:[],widgetFactory:{}},$external:{},$dependencies:{},isRegistered:b,register:y,create:g}),e.__merkur__}function b(e){var r=v();return Boolean(Object.keys(r.$in.widgetFactory).find((function(r){return new RegExp("^".concat(e)).test(r)})))}function h(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}}require("regenerator-runtime/runtime.js"),require("core-js/modules/es.object.define-property.js"),require("core-js/modules/es.array.concat.js"),require("core-js/modules/es.array.for-each.js"),require("core-js/modules/es.object.to-string.js"),require("core-js/modules/web.dom-collections.for-each.js"),require("core-js/modules/es.object.keys.js"),require("core-js/modules/es.regexp.exec.js"),require("core-js/modules/es.string.split.js"),require("core-js/modules/es.array.reduce.js"),require("core-js/modules/es.function.name.js"),require("core-js/modules/es.array.find.js"),require("core-js/modules/es.regexp.constructor.js"),require("core-js/modules/es.regexp.to-string.js"),require("core-js/modules/esnext.global-this.js"),require("core-js/modules/es.array.map.js"),require("core-js/modules/es.object.seal.js"),require("core-js/modules/es.symbol.js"),require("core-js/modules/es.array.filter.js"),require("core-js/modules/es.object.get-own-property-descriptor.js"),require("core-js/modules/es.object.get-own-property-descriptors.js"),require("core-js/modules/es.object.define-properties.js"),require("core-js/modules/es.promise.js"),require("core-js/modules/es.array.slice.js"),require("core-js/modules/es.array.from.js"),require("core-js/modules/es.string.iterator.js"),require("core-js/modules/es.symbol.description.js"),require("core-js/modules/es.symbol.iterator.js"),require("core-js/modules/es.array.iterator.js"),require("core-js/modules/web.dom-collections.iterator.js"),require("core-js/modules/es.array.is-array.js"),Object.defineProperty(exports,"__esModule",{value:!0}),exports.bindWidgetToFunctions=f,exports.createMerkur=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.$plugins,t=void 0===r?[]:r,n=v();return t.forEach((function(e){e&&d(e.setup)&&e.setup(n)})),n},exports.createMerkurWidget=function(){return j.apply(this,arguments)},exports.getMerkur=v,exports.hookMethod=function(e,r,t){var n=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",t=r.split("."),n=t.pop(),o=t.reduce((function(e,r){return e[r]||{}}),e);if(!d(o[n]))throw new Error("Defined path '".concat(r,"' is incorrect. Check your widget structure."));return{target:o,methodName:n}}(e,r),o=n.target,s=n.methodName,i=c(e,o[s]);return o[s]=function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return t.apply(void 0,[e,i].concat(n))},i},exports.isFunction=d,exports.removeMerkur=function(){delete h().__merkur__},exports.setDefaultValueForUndefined=l;
|
|
1
|
+
"use strict";function e(r){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e(r)}function r(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */r=function(){return t};var t={},n=Object.prototype,o=n.hasOwnProperty,i=Object.defineProperty||function(e,r,t){e[r]=t.value},a="function"==typeof Symbol?Symbol:{},u=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag";function l(e,r,t){return Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}),e[r]}try{l({},"")}catch(e){l=function(e,r,t){return e[r]=t}}function f(e,r,t,n){var o=r&&r.prototype instanceof h?r:h,a=Object.create(o.prototype),u=new k(n||[]);return i(a,"_invoke",{value:O(e,t,u)}),a}function p(e,r,t){try{return{type:"normal",arg:e.call(r,t)}}catch(e){return{type:"throw",arg:e}}}t.wrap=f;var d={};function h(){}function y(){}function v(){}var m={};l(m,u,(function(){return this}));var g=Object.getPrototypeOf,j=g&&g(g(L([])));j&&j!==n&&o.call(j,u)&&(m=j);var b=v.prototype=h.prototype=Object.create(m);function w(e){["next","throw","return"].forEach((function(r){l(e,r,(function(e){return this._invoke(r,e)}))}))}function x(r,t){function n(i,a,u,c){var s=p(r[i],r,a);if("throw"!==s.type){var l=s.arg,f=l.value;return f&&"object"==e(f)&&o.call(f,"__await")?t.resolve(f.__await).then((function(e){n("next",e,u,c)}),(function(e){n("throw",e,u,c)})):t.resolve(f).then((function(e){l.value=e,u(l)}),(function(e){return n("throw",e,u,c)}))}c(s.arg)}var a;i(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,o){n(e,r,t,o)}))}return a=a?a.then(o,o):o()}})}function O(e,r,t){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return S()}for(t.method=o,t.arg=i;;){var a=t.delegate;if(a){var u=q(a,t);if(u){if(u===d)continue;return u}}if("next"===t.method)t.sent=t._sent=t.arg;else if("throw"===t.method){if("suspendedStart"===n)throw n="completed",t.arg;t.dispatchException(t.arg)}else"return"===t.method&&t.abrupt("return",t.arg);n="executing";var c=p(e,r,t);if("normal"===c.type){if(n=t.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:t.done}}"throw"===c.type&&(n="completed",t.method="throw",t.arg=c.arg)}}}function q(e,r){var t=e.iterator[r.method];if(void 0===t){if(r.delegate=null,"throw"===r.method){if(e.iterator.return&&(r.method="return",r.arg=void 0,q(e,r),"throw"===r.method))return d;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var n=p(t,e.iterator,r.arg);if("throw"===n.type)return r.method="throw",r.arg=n.arg,r.delegate=null,d;var o=n.arg;return o?o.done?(r[e.resultName]=o.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,d):o:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,d)}function _(e){var r={tryLoc:e[0]};1 in e&&(r.catchLoc=e[1]),2 in e&&(r.finallyLoc=e[2],r.afterLoc=e[3]),this.tryEntries.push(r)}function E(e){var r=e.completion||{};r.type="normal",delete r.arg,e.completion=r}function k(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(_,this),this.reset(!0)}function L(e){if(e){var r=e[u];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var t=-1,n=function r(){for(;++t<e.length;)if(o.call(e,t))return r.value=e[t],r.done=!1,r;return r.value=void 0,r.done=!0,r};return n.next=n}}return{next:S}}function S(){return{value:void 0,done:!0}}return y.prototype=v,i(b,"constructor",{value:v,configurable:!0}),i(v,"constructor",{value:y,configurable:!0}),y.displayName=l(v,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var r="function"==typeof e&&e.constructor;return!!r&&(r===y||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,l(e,s,"GeneratorFunction")),e.prototype=Object.create(b),e},t.awrap=function(e){return{__await:e}},w(x.prototype),l(x.prototype,c,(function(){return this})),t.AsyncIterator=x,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new x(f(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},w(b),l(b,s,"Generator"),l(b,u,(function(){return this})),l(b,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var r=Object(e),t=[];for(var n in r)t.push(n);return t.reverse(),function e(){for(;t.length;){var n=t.pop();if(n in r)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=L,k.prototype={constructor:k,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var r in this)"t"===r.charAt(0)&&o.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function t(t,n){return a.type="throw",a.arg=e,r.next=t,n&&(r.method="next",r.arg=void 0),!!n}for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n],a=i.completion;if("root"===i.tryLoc)return t("end");if(i.tryLoc<=this.prev){var u=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return t(i.catchLoc,!0);if(this.prev<i.finallyLoc)return t(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return t(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return t(i.finallyLoc)}}}},abrupt:function(e,r){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var i=n;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,r){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&r&&(this.next=r),d},finish:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.finallyLoc===e)return this.complete(t.completion,t.afterLoc),E(t),d}},catch:function(e){for(var r=this.tryEntries.length-1;r>=0;--r){var t=this.tryEntries[r];if(t.tryLoc===e){var n=t.completion;if("throw"===n.type){var o=n.arg;E(t)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,t){return this.delegate={iterator:L(e),resultName:r,nextLoc:t},"next"===this.method&&(this.arg=void 0),d}},t}function t(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||o(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,r){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=o(e))||r&&e&&"number"==typeof e.length){t&&(e=t);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,u=!0,c=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return u=e.done,e},e:function(e){c=!0,a=e},f:function(){try{u||null==t.return||t.return()}finally{if(c)throw a}}}}function o(e,r){if(e){if("string"==typeof e)return i(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?i(e,r):void 0}}function i(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function a(e,r,t,n,o,i,a){try{var u=e[i](a),c=u.value}catch(e){return void t(e)}u.done?r(c):Promise.resolve(c).then(n,o)}function u(e){return function(){var r=this,t=arguments;return new Promise((function(n,o){var i=e.apply(r,t);function u(e){a(i,n,o,u,c,"next",e)}function c(e){a(i,n,o,u,c,"throw",e)}u(void 0)}))}}function c(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function s(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?c(Object(t),!0).forEach((function(r){l(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):c(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function l(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function f(e,r){return function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];return r.apply(void 0,[e].concat(n))}}function p(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=s({},e);return r.forEach((function(e){n[e]=n[e]||t})),n}function d(e,r){r=r||e,Object.keys(r).forEach((function(t){if(h(r[t])){var n=r[t];r[t]=f(e,n)}}))}function h(e){return"function"==typeof e}function y(e,r,t){return v.apply(this,arguments)}function v(){return(v=u(r().mark((function e(o,i,a){var u,c,s;return r().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:u=n(o.$plugins),e.prev=1,u.s();case 3:if((c=u.n()).done){e.next=11;break}if(!h((s=c.value)[i])){e.next=9;break}return e.next=8,s[i].apply(s,[o].concat(t(a)));case 8:o=e.sent;case 9:e.next=3;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),u.e(e.t0);case 16:return e.prev=16,u.f(),e.finish(16);case 19:return e.abrupt("return",o);case 20:case"end":return e.stop()}}),e,null,[[1,13,16,19]])})))).apply(this,arguments)}function m(){return m=u(r().mark((function e(){var t,n,o,i,a,c=arguments;return r().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=p(t=c.length>0&&void 0!==c[0]?c[0]:{},["$dependencies","$external"]),t=p(t,["setup","create"],(function(e){return e})),o=(n=t).setup,i=n.create,a={setup:function(e){var t=arguments;return u(r().mark((function n(){var i,a,u;return r().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:for(i=t.length,a=new Array(i>1?i-1:0),u=1;u<i;u++)a[u-1]=t[u];return r.next=3,y(e,"setup",a);case 3:return e=r.sent,r.abrupt("return",o.apply(void 0,[e].concat(a)));case 5:case"end":return r.stop()}}),n)})))()},create:function(e){var t=arguments;return u(r().mark((function n(){var o,a,u;return r().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:for(o=t.length,a=new Array(o>1?o-1:0),u=1;u<o;u++)a[u-1]=t[u];return r.next=3,y(e,"create",a);case 3:return e=r.sent,r.abrupt("return",i.apply(void 0,[e].concat(a)));case 5:case"end":return r.stop()}}),n)})))()},$plugins:(t.$plugins||[]).map((function(e){return e()}))},a.name=t.name,a.version=t.version,a.$dependencies=t.$dependencies,a.$external=t.$external,a.$in={},delete t.name,delete t.version,delete t.$dependencies,delete t.$external,delete t.$plugins,delete t.setup,delete t.create,e.next=19,a.setup(a,t);case 19:return a=e.sent,e.next=22,a.create(a,t);case 22:return d(a=e.sent),Object.seal(a),e.abrupt("return",a);case 26:case"end":return e.stop()}}),e)}))),m.apply(this,arguments)}function g(e){var r=e.name,t=e.version,n=e.createWidget;b().$in.widgetFactory[r+t]=n}function j(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=b(),t=e.name,n=e.version,o=r.$in.widgetFactory[t+n];if(!h(o))throw new Error('The widget with defined name and version "'.concat(t+n,'" is not defined.'));return o(e)}function b(){var e=x();return e.__merkur__||(e.__merkur__={$in:{widgets:[],widgetFactory:{}},$external:{},$dependencies:{},isRegistered:w,register:g,create:j}),e.__merkur__}function w(e){var r=b();return Boolean(Object.keys(r.$in.widgetFactory).find((function(r){return new RegExp("^".concat(e)).test(r)})))}function x(){return"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{}}require("core-js/modules/es.object.define-property.js"),require("core-js/modules/es.array.concat.js"),require("core-js/modules/es.array.for-each.js"),require("core-js/modules/es.object.to-string.js"),require("core-js/modules/web.dom-collections.for-each.js"),require("core-js/modules/es.object.keys.js"),require("core-js/modules/es.array.reduce.js"),require("core-js/modules/es.function.name.js"),require("core-js/modules/es.array.find.js"),require("core-js/modules/es.regexp.exec.js"),require("core-js/modules/es.regexp.constructor.js"),require("core-js/modules/es.regexp.to-string.js"),require("core-js/modules/esnext.global-this.js"),require("core-js/modules/es.array.map.js"),require("core-js/modules/es.object.seal.js"),require("core-js/modules/es.symbol.js"),require("core-js/modules/es.array.filter.js"),require("core-js/modules/es.object.get-own-property-descriptor.js"),require("core-js/modules/es.object.get-own-property-descriptors.js"),require("core-js/modules/es.object.define-properties.js"),require("core-js/modules/es.promise.js"),require("core-js/modules/es.array.slice.js"),require("core-js/modules/es.array.from.js"),require("core-js/modules/es.string.iterator.js"),require("core-js/modules/es.symbol.description.js"),require("core-js/modules/es.symbol.iterator.js"),require("core-js/modules/es.array.iterator.js"),require("core-js/modules/web.dom-collections.iterator.js"),require("core-js/modules/es.array.is-array.js"),require("core-js/modules/es.symbol.async-iterator.js"),require("core-js/modules/es.symbol.to-string-tag.js"),require("core-js/modules/es.json.to-string-tag.js"),require("core-js/modules/es.math.to-string-tag.js"),require("core-js/modules/es.object.create.js"),require("core-js/modules/es.object.get-prototype-of.js"),require("core-js/modules/es.object.set-prototype-of.js"),require("core-js/modules/es.array.reverse.js"),Object.defineProperty(exports,"__esModule",{value:!0}),exports.bindWidgetToFunctions=d,exports.createMerkur=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.$plugins,t=void 0===r?[]:r,n=b();return t.forEach((function(e){e&&h(e.setup)&&e.setup(n)})),n},exports.createMerkurWidget=function(){return m.apply(this,arguments)},exports.getMerkur=b,exports.hookMethod=function(e,r,t){var n=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",t=r.split("."),n=t.pop(),o=t.reduce((function(e,r){return e[r]||{}}),e);if(!h(o[n]))throw new Error("Defined path '".concat(r,"' is incorrect. Check your widget structure."));return{target:o,methodName:n}}(e,r),o=n.target,i=n.methodName,a=f(e,o[i]);return o[i]=function(e){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return t.apply(void 0,[e,a].concat(n))},a},exports.isFunction=h,exports.removeMerkur=function(){delete x().__merkur__},exports.setDefaultValueForUndefined=p;
|
package/lib/index.es9.cjs
CHANGED
|
@@ -3,22 +3,20 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
|
|
7
6
|
function createBoundedFunction(widget, originalFunction) {
|
|
8
7
|
return (...rest) => {
|
|
9
8
|
return originalFunction(widget, ...rest);
|
|
10
9
|
};
|
|
11
10
|
}
|
|
12
|
-
|
|
13
11
|
function setDefaultValueForUndefined(object, keys, value = {}) {
|
|
14
|
-
let objectClone = {
|
|
12
|
+
let objectClone = {
|
|
13
|
+
...object
|
|
15
14
|
};
|
|
16
15
|
keys.forEach(key => {
|
|
17
16
|
objectClone[key] = objectClone[key] || value;
|
|
18
17
|
});
|
|
19
18
|
return objectClone;
|
|
20
19
|
}
|
|
21
|
-
|
|
22
20
|
function bindWidgetToFunctions(widget, target) {
|
|
23
21
|
target = target || widget;
|
|
24
22
|
Object.keys(target).forEach(key => {
|
|
@@ -28,50 +26,40 @@ function bindWidgetToFunctions(widget, target) {
|
|
|
28
26
|
}
|
|
29
27
|
});
|
|
30
28
|
}
|
|
31
|
-
|
|
32
29
|
function hookMethod(widget, path, handler) {
|
|
33
30
|
const {
|
|
34
31
|
target,
|
|
35
32
|
methodName
|
|
36
33
|
} = parsePath(widget, path);
|
|
37
34
|
const originalFunction = createBoundedFunction(widget, target[methodName]);
|
|
38
|
-
|
|
39
35
|
target[methodName] = function (widget, ...rest) {
|
|
40
36
|
return handler(widget, originalFunction, ...rest);
|
|
41
37
|
};
|
|
42
|
-
|
|
43
38
|
return originalFunction;
|
|
44
39
|
}
|
|
45
|
-
|
|
46
40
|
function parsePath(widget, path = '') {
|
|
47
41
|
const paths = path.split('.');
|
|
48
42
|
const methodName = paths.pop();
|
|
49
43
|
const target = paths.reduce((target, path) => target[path] || {}, widget);
|
|
50
|
-
|
|
51
44
|
if (!isFunction(target[methodName])) {
|
|
52
45
|
throw new Error(`Defined path '${path}' is incorrect. Check your widget structure.`);
|
|
53
46
|
}
|
|
54
|
-
|
|
55
47
|
return {
|
|
56
48
|
target,
|
|
57
49
|
methodName
|
|
58
50
|
};
|
|
59
51
|
}
|
|
60
|
-
|
|
61
52
|
function isFunction(value) {
|
|
62
53
|
return typeof value === 'function';
|
|
63
54
|
}
|
|
64
|
-
|
|
65
55
|
async function callPluginMethod(widget, method, args) {
|
|
66
56
|
for (const plugin of widget.$plugins) {
|
|
67
57
|
if (isFunction(plugin[method])) {
|
|
68
58
|
widget = await plugin[method](widget, ...args);
|
|
69
59
|
}
|
|
70
60
|
}
|
|
71
|
-
|
|
72
61
|
return widget;
|
|
73
62
|
}
|
|
74
|
-
|
|
75
63
|
async function createMerkurWidget(widgetDefinition = {}) {
|
|
76
64
|
widgetDefinition = setDefaultValueForUndefined(widgetDefinition, ['$dependencies', '$external']);
|
|
77
65
|
widgetDefinition = setDefaultValueForUndefined(widgetDefinition, ['setup', 'create'], widget => widget);
|
|
@@ -84,15 +72,14 @@ async function createMerkurWidget(widgetDefinition = {}) {
|
|
|
84
72
|
widget = await callPluginMethod(widget, 'setup', rest);
|
|
85
73
|
return setup(widget, ...rest);
|
|
86
74
|
},
|
|
87
|
-
|
|
88
75
|
async create(widget, ...rest) {
|
|
89
76
|
widget = await callPluginMethod(widget, 'create', rest);
|
|
90
77
|
return create(widget, ...rest);
|
|
91
78
|
},
|
|
92
|
-
|
|
93
79
|
$plugins: (widgetDefinition.$plugins || []).map(pluginFactory => pluginFactory())
|
|
94
|
-
};
|
|
80
|
+
};
|
|
95
81
|
|
|
82
|
+
// TODO refactoring
|
|
96
83
|
widget.name = widgetDefinition.name;
|
|
97
84
|
widget.version = widgetDefinition.version;
|
|
98
85
|
widget.$dependencies = widgetDefinition.$dependencies;
|
|
@@ -111,7 +98,6 @@ async function createMerkurWidget(widgetDefinition = {}) {
|
|
|
111
98
|
Object.seal(widget);
|
|
112
99
|
return widget;
|
|
113
100
|
}
|
|
114
|
-
|
|
115
101
|
function register({
|
|
116
102
|
name,
|
|
117
103
|
version,
|
|
@@ -120,7 +106,6 @@ function register({
|
|
|
120
106
|
const merkur = getMerkur();
|
|
121
107
|
merkur.$in.widgetFactory[name + version] = createWidget;
|
|
122
108
|
}
|
|
123
|
-
|
|
124
109
|
function create(widgetProperties = {}) {
|
|
125
110
|
const merkur = getMerkur();
|
|
126
111
|
const {
|
|
@@ -128,14 +113,11 @@ function create(widgetProperties = {}) {
|
|
|
128
113
|
version
|
|
129
114
|
} = widgetProperties;
|
|
130
115
|
const factory = merkur.$in.widgetFactory[name + version];
|
|
131
|
-
|
|
132
116
|
if (!isFunction(factory)) {
|
|
133
117
|
throw new Error(`The widget with defined name and version "${name + version}" is not defined.`);
|
|
134
118
|
}
|
|
135
|
-
|
|
136
119
|
return factory(widgetProperties);
|
|
137
120
|
}
|
|
138
|
-
|
|
139
121
|
function createMerkur({
|
|
140
122
|
$plugins = []
|
|
141
123
|
} = {}) {
|
|
@@ -147,15 +129,12 @@ function createMerkur({
|
|
|
147
129
|
});
|
|
148
130
|
return merkur;
|
|
149
131
|
}
|
|
150
|
-
|
|
151
132
|
function removeMerkur() {
|
|
152
133
|
const globalContext = getGlobalContext();
|
|
153
134
|
delete globalContext.__merkur__;
|
|
154
135
|
}
|
|
155
|
-
|
|
156
136
|
function getMerkur() {
|
|
157
137
|
const globalContext = getGlobalContext();
|
|
158
|
-
|
|
159
138
|
if (!globalContext.__merkur__) {
|
|
160
139
|
globalContext.__merkur__ = {
|
|
161
140
|
$in: {
|
|
@@ -169,35 +148,27 @@ function getMerkur() {
|
|
|
169
148
|
create
|
|
170
149
|
};
|
|
171
150
|
}
|
|
172
|
-
|
|
173
151
|
return globalContext.__merkur__;
|
|
174
152
|
}
|
|
175
|
-
|
|
176
153
|
function isRegistered(name) {
|
|
177
154
|
const merkur = getMerkur();
|
|
178
155
|
return Boolean(Object.keys(merkur.$in.widgetFactory).find(key => new RegExp(`^${name}`).test(key)));
|
|
179
156
|
}
|
|
180
|
-
|
|
181
157
|
function getGlobalContext() {
|
|
182
158
|
if (typeof globalThis !== 'undefined') {
|
|
183
159
|
return globalThis;
|
|
184
160
|
}
|
|
185
|
-
|
|
186
161
|
if (typeof self !== 'undefined') {
|
|
187
162
|
return self;
|
|
188
163
|
}
|
|
189
|
-
|
|
190
164
|
if (typeof window !== 'undefined') {
|
|
191
165
|
return window;
|
|
192
166
|
}
|
|
193
|
-
|
|
194
167
|
if (typeof global !== 'undefined') {
|
|
195
168
|
return global;
|
|
196
169
|
}
|
|
197
|
-
|
|
198
170
|
return {};
|
|
199
171
|
}
|
|
200
|
-
|
|
201
172
|
exports.bindWidgetToFunctions = bindWidgetToFunctions;
|
|
202
173
|
exports.createMerkur = createMerkur;
|
|
203
174
|
exports.createMerkurWidget = createMerkurWidget;
|
package/lib/index.es9.mjs
CHANGED
|
@@ -3,16 +3,15 @@ function createBoundedFunction(widget, originalFunction) {
|
|
|
3
3
|
return originalFunction(widget, ...rest);
|
|
4
4
|
};
|
|
5
5
|
}
|
|
6
|
-
|
|
7
6
|
function setDefaultValueForUndefined(object, keys, value = {}) {
|
|
8
|
-
let objectClone = {
|
|
7
|
+
let objectClone = {
|
|
8
|
+
...object
|
|
9
9
|
};
|
|
10
10
|
keys.forEach(key => {
|
|
11
11
|
objectClone[key] = objectClone[key] || value;
|
|
12
12
|
});
|
|
13
13
|
return objectClone;
|
|
14
14
|
}
|
|
15
|
-
|
|
16
15
|
function bindWidgetToFunctions(widget, target) {
|
|
17
16
|
target = target || widget;
|
|
18
17
|
Object.keys(target).forEach(key => {
|
|
@@ -22,50 +21,40 @@ function bindWidgetToFunctions(widget, target) {
|
|
|
22
21
|
}
|
|
23
22
|
});
|
|
24
23
|
}
|
|
25
|
-
|
|
26
24
|
function hookMethod(widget, path, handler) {
|
|
27
25
|
const {
|
|
28
26
|
target,
|
|
29
27
|
methodName
|
|
30
28
|
} = parsePath(widget, path);
|
|
31
29
|
const originalFunction = createBoundedFunction(widget, target[methodName]);
|
|
32
|
-
|
|
33
30
|
target[methodName] = function (widget, ...rest) {
|
|
34
31
|
return handler(widget, originalFunction, ...rest);
|
|
35
32
|
};
|
|
36
|
-
|
|
37
33
|
return originalFunction;
|
|
38
34
|
}
|
|
39
|
-
|
|
40
35
|
function parsePath(widget, path = '') {
|
|
41
36
|
const paths = path.split('.');
|
|
42
37
|
const methodName = paths.pop();
|
|
43
38
|
const target = paths.reduce((target, path) => target[path] || {}, widget);
|
|
44
|
-
|
|
45
39
|
if (!isFunction(target[methodName])) {
|
|
46
40
|
throw new Error(`Defined path '${path}' is incorrect. Check your widget structure.`);
|
|
47
41
|
}
|
|
48
|
-
|
|
49
42
|
return {
|
|
50
43
|
target,
|
|
51
44
|
methodName
|
|
52
45
|
};
|
|
53
46
|
}
|
|
54
|
-
|
|
55
47
|
function isFunction(value) {
|
|
56
48
|
return typeof value === 'function';
|
|
57
49
|
}
|
|
58
|
-
|
|
59
50
|
async function callPluginMethod(widget, method, args) {
|
|
60
51
|
for (const plugin of widget.$plugins) {
|
|
61
52
|
if (isFunction(plugin[method])) {
|
|
62
53
|
widget = await plugin[method](widget, ...args);
|
|
63
54
|
}
|
|
64
55
|
}
|
|
65
|
-
|
|
66
56
|
return widget;
|
|
67
57
|
}
|
|
68
|
-
|
|
69
58
|
async function createMerkurWidget(widgetDefinition = {}) {
|
|
70
59
|
widgetDefinition = setDefaultValueForUndefined(widgetDefinition, ['$dependencies', '$external']);
|
|
71
60
|
widgetDefinition = setDefaultValueForUndefined(widgetDefinition, ['setup', 'create'], widget => widget);
|
|
@@ -78,15 +67,14 @@ async function createMerkurWidget(widgetDefinition = {}) {
|
|
|
78
67
|
widget = await callPluginMethod(widget, 'setup', rest);
|
|
79
68
|
return setup(widget, ...rest);
|
|
80
69
|
},
|
|
81
|
-
|
|
82
70
|
async create(widget, ...rest) {
|
|
83
71
|
widget = await callPluginMethod(widget, 'create', rest);
|
|
84
72
|
return create(widget, ...rest);
|
|
85
73
|
},
|
|
86
|
-
|
|
87
74
|
$plugins: (widgetDefinition.$plugins || []).map(pluginFactory => pluginFactory())
|
|
88
|
-
};
|
|
75
|
+
};
|
|
89
76
|
|
|
77
|
+
// TODO refactoring
|
|
90
78
|
widget.name = widgetDefinition.name;
|
|
91
79
|
widget.version = widgetDefinition.version;
|
|
92
80
|
widget.$dependencies = widgetDefinition.$dependencies;
|
|
@@ -105,7 +93,6 @@ async function createMerkurWidget(widgetDefinition = {}) {
|
|
|
105
93
|
Object.seal(widget);
|
|
106
94
|
return widget;
|
|
107
95
|
}
|
|
108
|
-
|
|
109
96
|
function register({
|
|
110
97
|
name,
|
|
111
98
|
version,
|
|
@@ -114,7 +101,6 @@ function register({
|
|
|
114
101
|
const merkur = getMerkur();
|
|
115
102
|
merkur.$in.widgetFactory[name + version] = createWidget;
|
|
116
103
|
}
|
|
117
|
-
|
|
118
104
|
function create(widgetProperties = {}) {
|
|
119
105
|
const merkur = getMerkur();
|
|
120
106
|
const {
|
|
@@ -122,14 +108,11 @@ function create(widgetProperties = {}) {
|
|
|
122
108
|
version
|
|
123
109
|
} = widgetProperties;
|
|
124
110
|
const factory = merkur.$in.widgetFactory[name + version];
|
|
125
|
-
|
|
126
111
|
if (!isFunction(factory)) {
|
|
127
112
|
throw new Error(`The widget with defined name and version "${name + version}" is not defined.`);
|
|
128
113
|
}
|
|
129
|
-
|
|
130
114
|
return factory(widgetProperties);
|
|
131
115
|
}
|
|
132
|
-
|
|
133
116
|
function createMerkur({
|
|
134
117
|
$plugins = []
|
|
135
118
|
} = {}) {
|
|
@@ -141,15 +124,12 @@ function createMerkur({
|
|
|
141
124
|
});
|
|
142
125
|
return merkur;
|
|
143
126
|
}
|
|
144
|
-
|
|
145
127
|
function removeMerkur() {
|
|
146
128
|
const globalContext = getGlobalContext();
|
|
147
129
|
delete globalContext.__merkur__;
|
|
148
130
|
}
|
|
149
|
-
|
|
150
131
|
function getMerkur() {
|
|
151
132
|
const globalContext = getGlobalContext();
|
|
152
|
-
|
|
153
133
|
if (!globalContext.__merkur__) {
|
|
154
134
|
globalContext.__merkur__ = {
|
|
155
135
|
$in: {
|
|
@@ -163,33 +143,25 @@ function getMerkur() {
|
|
|
163
143
|
create
|
|
164
144
|
};
|
|
165
145
|
}
|
|
166
|
-
|
|
167
146
|
return globalContext.__merkur__;
|
|
168
147
|
}
|
|
169
|
-
|
|
170
148
|
function isRegistered(name) {
|
|
171
149
|
const merkur = getMerkur();
|
|
172
150
|
return Boolean(Object.keys(merkur.$in.widgetFactory).find(key => new RegExp(`^${name}`).test(key)));
|
|
173
151
|
}
|
|
174
|
-
|
|
175
152
|
function getGlobalContext() {
|
|
176
153
|
if (typeof globalThis !== 'undefined') {
|
|
177
154
|
return globalThis;
|
|
178
155
|
}
|
|
179
|
-
|
|
180
156
|
if (typeof self !== 'undefined') {
|
|
181
157
|
return self;
|
|
182
158
|
}
|
|
183
|
-
|
|
184
159
|
if (typeof window !== 'undefined') {
|
|
185
160
|
return window;
|
|
186
161
|
}
|
|
187
|
-
|
|
188
162
|
if (typeof global !== 'undefined') {
|
|
189
163
|
return global;
|
|
190
164
|
}
|
|
191
|
-
|
|
192
165
|
return {};
|
|
193
166
|
}
|
|
194
|
-
|
|
195
167
|
export { bindWidgetToFunctions, createMerkur, createMerkurWidget, getMerkur, hookMethod, isFunction, removeMerkur, setDefaultValueForUndefined };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@merkur/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.0",
|
|
4
4
|
"description": "Merkur is tiny and extensible library for creating front-end microservices.",
|
|
5
5
|
"main": "lib/index",
|
|
6
6
|
"module": "lib/index",
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"rollup": "^2.70.2"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "13a0ac12f77f381b1d829cffe9b21d453c26ca7a"
|
|
58
58
|
}
|